我正在尝试运行单元测试,但在使用import
关键字添加一些新代码时遇到了问题。我以前工作的设置只是一个npm脚本,如下所示:
"test:unit": "babel-node node_modules/.bin/babel-istanbul cover --config=istanbul.json --dir coverage/unit node_modules/.bin/_mocha -- 'client/components/**/*.spec.unit.js' --require node_modules/ignore-styles --require node_modules/mock-local-storage"
在我的代码中添加了一个导入关键字之前,这几个月工作得很好。现在它抛出错误'Unexpected reserved word',
并指向导入。
在webpack服务器上编译时,我的.babelrc
工作正常。我以为这会看着.babelrc。以防万一 - 这是.babelrc
:
{
"presets": [
"es2015",
"react"
],
"plugins": [
"transform-object-rest-spread",
"syntax-dynamic-import"
]
}
似乎无法找到有效的解决方案。有谁知道如何解决这个错误?谢谢!
答案 0 :(得分:2)
您可以指定编译器来转换测试套件。
那是--compilers js:babel-core/register
"test:unit": "babel-node node_modules/.bin/babel-istanbul cover --config=istanbul.json --dir coverage/unit node_modules/.bin/_mocha --compilers js:babel-core/register 'client/components/**/*.spec.unit.js' --require node_modules/ignore-styles --require node_modules/mock-local-storage"
取一条线索here。
N.B:而不是node_modules/.bin/_mocha
,您只需要_mocha
。
希望这有帮助!