为了账号安全,请及时绑定邮箱和手机立即绑定

React中编写的tsx组件,如何导入到js中进行单元测试?看了蚂蚁的源码,还是有点不太明白

React中编写的tsx组件,如何导入到js中进行单元测试?看了蚂蚁的源码,还是有点不太明白

慕田峪7331174 2019-02-21 14:19:42
现在很多项目中前端项目越来越庞大,单元测试是不能缺少的一环。我们工作中也不例外,React中现在大家用的比较多的有jest、enzyme。经过一段时间的使用,现在也是拥抱TypeScript了,接口约定比原来的JavaScript更加简洁清除了。但随之而来的问题也不少,通常我们编写TSX文件,引入React是用的默认方式://Regular importsimport * as React from 'react';//Synthetic default imports:import React from 'react';按官方的说法第二种是动态导入,我们通常用断言的方式,也就是第一种引入React。看蚂蚁的源码是用的第二种方式引入的,我想他们是通过typescript-babel-jest ,babel-jest的方式可以这么直接导入的?在github上并没有找到过多关于这方式的解释,谁搞过这个吗?我准备翻翻babel看看怎么搞~~~第二个问题是,tsx编写的组件,是如何支持导入test.js中进行单元测试的?tsx 导入js文件的时候js,编译阶段没有报错,同样是直接的import进去的2、第二个他们要解决的问题就是tsx转换为js,进行单元测试吧、他们是如何转换的呢?
查看完整描述

1 回答

?
慕少森

TA贡献2019条经验 获得超9个赞

研究了一段时间,猜想,不论是用的什么第三方插件,测试环境还是基于nodeJS的,nodejs环境下运行的是什么?最终还是要编译成为js,再去跑测试的。于是我去搜了一下,怎么把tsx、ts文件转为js文件,果然,有一个typescript-babel-jest是可以做到的,到此我们的第二个问题就解决掉了。


查看完整回答
反对 回复 2019-02-24
  • 1 回答
  • 0 关注
  • 2260 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信