在我的package.json中,我添加了"test": "set NODE_ENV=test && jest --watch"
来设置单元测试。
长时间排查故障后,找出出现此错误消息的原因:
{import { configure } from 'enzyme';
^
SyntaxError: Unexpected token {
我发现通过删除set NODE_ENV=test &&
可以解决此问题。我现在认为它必须与测试配置有关:
"babel": {
"env": {
"test": {
"presets": [
[
"next/babel",
{
"preset-env": {
"modules": "commonjs"
}
}
],
"@babel/preset-env"
],
"plugins": [
"transform-es2015-modules-commonjs"
]
}
}
}
在类似的帖子中建议添加"transform-es2015-modules-commonjs"
和@babel/preset-env
,但是我不确定这与该问题有关。
我安装了cross-env并添加了它:"test": "cross-env NODE_ENV=test jest --watch"
,它运行良好。顺便说一下,我在 Windows计算机上。
跨环境编译命令与set NODE_ENV=test && jest --watch
有何不同?