我正在使用反应应用程序的最小设置:
我想现在测试我的应用程序。
我有一个.babelrc,内容如下:
{
"presets": ["es2015"],
"ignore": false
}
我的测试看起来像这样:
import { expect, assert } from 'chai';
import AppStore from '../src/js/stores/app-store';
describe('app store', () => {
assert.equal(3,3);
});
当我评论第二次导入时,它有效。
当我导入AppStore时,收到此错误消息:
(function (exports, require, module, __filename, __dirname) { import { dispatch, register } from '../dispatchers/app-dispatcher';
^^^^^^
SyntaxError: Unexpected token import
所以,我显然正在发送test.js文件,但是导入不会转换为ES5。
我能做什么,最小化设置如何(不使用Grunt 或者其他)。
编辑:我在package.json中的节点脚本如下所示:
"scripts": {
"dev": "webpack && webpack-dev-server",
"test": "mocha --compilers js:babel-core/register --recursive"
},
答案 0 :(得分:0)
我遇到了同样的问题。在stackoverflow及其他方面尝试了所有其他解决方案之后,package.json上的这个简单配置为我做了:
"babel": {
"presets": [
"es2015"
]
}
之后我所有的ES6进口都有效。 顺便说一句,我在webpack.config.js中有相同的配置,但显然这是使其适用于mocha测试的唯一方法。