我有以下脚本:
"build": "NODE_ENV=production webpack
--progress
--profile
--config scripts/webpack.build.config.js
--mode production"
当我使用我的配置构建项目时,一切顺利。
"test": "cross-env NODE_PATH=$NODE_PATH:./src NODE_ENV=test
nyc mocha
--timeout 30000
--exit \"./src/**/*.test.js\"
--require babel-register
--require babel-polyfill"
但是当我试图运行npm run test
时,我有一个错误的文件
我导入的内容无法接收
SyntaxError:D:/workspace/messaging-server/src/resources/templates/chat.messages.mustache.template:意外的令牌(1:0)1
<table width="100%" height="100%" bgcolor="#F0F0F0">
有没有办法根据webpack配置运行mocha测试?
答案 0 :(得分:1)
我通过这种方式解决了问题:
创建新文件babel-ignored.js
require.extensions['.png'] = function () {
return null;
};
require.extensions['.template'] = function () {
return null;
};
然后我添加到脚本--require babel-ignored.js
"test": "cross-env NODE_PATH=$NODE_PATH:./src NODE_ENV=test
nyc mocha
--timeout 30000
--exit \"./src/**/*.test.js\"
--require babel-register
--require babel-polyfill"
--require babel-ignored.js
现在,babel-register会忽略任何包含.png
和.template
扩展名的文件,这解决了我的问题