Rob*_*sen 9 javascript mocha.js ecmascript-6 babeljs react-native
我正在启动一个React Native项目,我想将ECMAScript 2015用于我的代码,并使用mocha进行单元测试.我已经安装了babel-register,babel-preset-es2015和babel-preset-stage-2,并将其添加到我的项目package.json文件中:
"babel": {
"presets": ["es2015", "stage-2"]
}
Run Code Online (Sandbox Code Playgroud)
但是当我运行mocha --compilers js:babel-register并尝试测试导入React Native API的模块时......
import React from 'react-native';
let {Dimensions} = React;
Run Code Online (Sandbox Code Playgroud)
...我收到有关React使用的传播运算符的错误:
node_modules/react-native/Libraries/react-native/react-native.js:107
...require('React'),
^^^
SyntaxError: Unexpected token ...
Run Code Online (Sandbox Code Playgroud)
这是一个babel bug - 阶段2预设不应该为扩展运营商添加支持吗?还是我错过了别的什么?
我也刚开始看到这个。看起来像一个错误。AFAIK babel 不会编译 node_modules 下的文件,因为它们应该始终被预编译。
这也是最近添加的
https://github.com/facebook/react-native/commit/f9b744d50137de25357994fe2e829f98104e2242