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