我可以使用Babel转换ECMA和Typescript吗?

时间:2018-10-24 19:59:57

标签: typescript ecmascript-6 mocha babel babel-register

我有一个包含2个测试的简单项目。

test.jsx
test.tsx

使用以下预设运行摩卡时

"presets": ["@babel/preset-env", "@babel/preset-react"]

jsx测试有效,但tsx解析有问题...

(function (exports, require, module, __filename, __dirname) { import React from
'react';
                                                                     ^^^^^

SyntaxError: Unexpected identifier

当我更改为...

"presets": ["@babel/preset-typescript", "@babel/preset-react"],

我明白了

I:\...\enzyme-example-mocha\test\.setup.js:1
(function (exports, require, module, __filename, __dirname) { import { JSDOM } f
rom 'jsdom';
                                                                     ^

SyntaxError: Unexpected token {

有没有办法让我俩都能工作?我的项目基于

https://github.com/airbnb/enzyme/tree/master/packages/enzyme-example-mocha

我也尝试过

["@babel/preset-typescript", "@babel/preset-env", "@babel/preset-react"]

但是我也一样...

I:\...\enzyme-example-mocha\test\.setup.js:1
(function (exports, require, module, __filename, __dirname) { import { JSDOM } f
rom 'jsdom';

如果我切换到["@babel/preset-env", "@babel/preset-typescript", "@babel/preset-react"],我会得到

(function (exports, require, module, __filename, __dirname) { import React from
'react';
                                                                     ^^^^^

SyntaxError: Unexpected identifier

0 个答案:

没有答案