无法弄清楚如何解决这些错误,Jest抱怨这些动态导入:
const importModules = Promise.all([
import('containers/HomePage/reducer'),
import('containers/HomePage/sagas'),
import('containers/HomePage'),
]);
错误讯息:
F:\react-boilerplate\app\store.js:49
import('./reducers').then(function (reducerModule) {
^^^^^^
SyntaxError: Unexpected token import
您可以在此处找到所有详细信息:https://github.com/mxstbr/react-boilerplate/pull/1358
答案 0 :(得分:4)
安装babel-plugin-dynamic-import-node
解决了我们的问题。此外,请确保babylon
(babel
依赖项)至少为6.12.0
。
另外,Travis构建存在问题,因为Travis缓存了node_modules
和旧版babylon
:
$ npm ls babylon
react-boilerplate@3.3.0 /home/travis/build/mxstbr/react-boilerplate
├─┬ babel-core@6.21.0
│ └── babylon@6.11.1
├─┬ babel-eslint@7.1.1
│ └── babylon@6.14.1
├─┬ jest-cli@18.0.0
│ └─┬ istanbul-lib-instrument@1.3.0
│ └── babylon@6.14.1
,因此我们不得不使用以下内容关闭缓存:cache: false
答案 1 :(得分:0)
看起来jest无法使用test
文件中.babelrc
的babel设置编译您的文件。您需要为prod
和test