我正在尝试在IE上运行我的VueJS + Nuxt应用程序,并收到以下错误:
"无法获取未定义或空引用的属性'调用'"
这发生在以下行中:modules[moduleId].call(module.exports, module, module.exports, hotCreateRequire(moduleId));
当 moduleID = "./node_modules/webpack-hot-middleware/client.js?name=client&reload=true&timeout=30000&path=/__webpack_hmr"
我认为这与我在使用 Nuxt 时配置预设的方式有关。
这是目前nuxt.config.js构建部分的样子:
build: {
vendor: ['vuetify', 'babel-polyfill', 'vued3tree', 'vue2-editor','lodash'],
extractCSS: true,
babel: {
presets: [
['es2015'],
[
'vue-app',
{
useBuiltIns: true,
targets: { ie: 11, uglify: true },
},
],
],
},
如何配置预设才能让我的应用在 IE 上运行?
也通过删除一个名为vue2-hammer的库来解决这个问题。现在我在Chrome和IE中有一个问题:"未定义再生器运行时"。尝试了谷歌中的所有解决方案,但没有解决方案。现在我的Nuxt.config.js看起来像这样:
const polyfill = require('@babel/polyfill');
module.exports = {
entry: [polyfill],
build: {
extractCSS: true,
extend(config, ctx) {
if (ctx.isDev && ctx.isClient) {
config.module.rules.push(
{
enforce: 'pre',
test: /.(js|vue)$/,
loader: 'eslint-loader',
exclude: /(node_modules)/,
},
{
test: /.js$/,
loader: 'babel-loader',
options: {
plugins: [
[
'@babel/plugin-transform-runtime',
{
corejs: false,
helpers: true,
regenerator: true,
useESModules: false,
},
],
[
'@babel/plugin-transform-regenerator',
{
asyncGenerators: false,
generators: false,
async: false,
},
],
'babel-plugin-transform-es2015-shorthand-properties',
'@babel/plugin-transform-exponentiation-operator',
'@babel/plugin-syntax-dynamic-import',
'@babel/plugin-transform-arrow-functions',
],
},
},
);
}
},
},
babel: {
presets: [
[
'es2015',
'stage-0',
],
],
exclude: ['transform-regenerator'],
},
蚂蚁知道什么会导致这种情况?