【发布时间】:2018-11-29 12:03:01
【问题描述】:
我正在使用 webpack 模板构建一个 Vue.js 应用程序。
由于我有一些适用于模拟 api 的测试,因此我只需要在测试时导入这些 api。
为此,我在main.js 文件中添加了条件导入:
if (process.env.NODE_ENV === 'testing') {
import('apiMocking')
.then(() => {
console.log('mocked api imported');
});
}
这样,当我运行测试时,他们使用的是我的模拟 api,当我运行应用程序时,我使用的是实际的 api。问题是,使用此配置,一旦应用程序启动,我在 Firefox 中就会出现以下错误:
SyntaxError: ... 'import' 和 'export' 可能只出现在顶部 等级
然后只是一个空白页。 在 Chrome 中一切正常...我该如何解决这个问题?
编辑:我已经在使用 wepback + babel,我的 webpack 配置取自这个 vue 模板:https://github.com/vuejs-templates/webpack 然后我还添加了 Babel:
.babelrc
{
"presets": [
["env", {
"modules": false,
"targets": {
"browsers": ["> 1%", "last 2 versions", "not ie <= 8"]
}
}],
"stage-2"
],
"plugins": ["transform-vue-jsx", "transform-runtime"]
}
然后在我的webpack.base.conf 文件中:
{
test: /\.js$/,
loader: 'babel-loader',
include: [resolve('src'), resolve('test'), resolve('node_modules/webpack-dev-server/client')]
},
【问题讨论】:
标签: javascript firefox