Webpack SyntaxError:意外的关键字';常数';。严格模式下不支持常量声明
在Nuxt 1.4项目上获取上述语法错误 这发生在Safari 9上,在Chrome上也能正常工作 我继续搜索,发现了由于ES6代码的浏览器兼容性问题而导致的问题,但未能找到问题的正确解决方案(Nuxt项目) 该网站也应该使用旧版本的浏览器 下面是nuxt.config.js和package.json文件的详细信息Webpack SyntaxError:意外的关键字';常数';。严格模式下不支持常量声明,webpack,babeljs,nuxt.js,Webpack,Babeljs,Nuxt.js,在Nuxt 1.4项目上获取上述语法错误 这发生在Safari 9上,在Chrome上也能正常工作 我继续搜索,发现了由于ES6代码的浏览器兼容性问题而导致的问题,但未能找到问题的正确解决方案(Nuxt项目) 该网站也应该使用旧版本的浏览器 下面是nuxt.config.js和package.json文件的详细信息 nuxt.config.js package.json 您应该使用Babel将代码编译为常规es5或es6代码,这取决于您所寻求的兼容性 在Nuxt中,您可以在Nuxt.config
您应该使用Babel将代码编译为常规es5或es6代码,这取决于您所寻求的兼容性 在Nuxt中,您可以在
Nuxt.config.js
中使用一个babel
选项来为您进行编译。
请查看babel
选项的文档:
如果您从Nuxt内部得到错误,您应该考虑升级到
Nuxt edge
,以获得旧版支持。您应该使用Babel将代码编译为常规es5或es6代码,具体取决于您所寻求的兼容性
在Nuxt中,您可以在Nuxt.config.js
中使用一个babel
选项来为您进行编译。
请查看babel
选项的文档:
如果您从Nuxt内部得到错误,您应该考虑升级到Nuxt edge
以获得旧版支持
module.exports = {
/*
** Build configuration
*/
build: {
/*
** Run ESLint on save
*/
extend (config, { isDev, isClient }) {
if (isDev && isClient) {
config.module.rules.push({
enforce: 'pre',
test: /\.(js|vue)$/,
loader: 'eslint-loader',
exclude: /(node_modules)/
})
}
},
vendor: ['babel-polyfill']
}
}
{
"dependencies": {
"axios": "^0.18.0",
"babel-polyfill": "^6.26.0",
"nuxt": "^1.4.0",
"vee-validate": "^2.0.5",
"vue-carousel": "^0.6.5",
"vue-i18n": "^7.4.2",
"vue-smooth-scroll": "^1.0.13",
"vue-tabs-component": "^1.4.0",
"vue-youtube-embed": "^2.1.3",
"vue2-google-maps": "^0.8.8"
},
"devDependencies": {
"ava": "^0.25.0",
"babel-eslint": "^8.2.1",
"eslint": "^4.17.0",
"eslint-config-standard": "^11.0.0-beta.0",
"eslint-friendly-formatter": "^3.0.0",
"eslint-loader": "^1.7.1",
"eslint-plugin-html": "^4.0.2",
"eslint-plugin-import": "^2.8.0",
"eslint-plugin-node": "^6.0.0",
"eslint-plugin-promise": "^3.6.0",
"eslint-plugin-standard": "^3.0.1",
"eslint-plugin-vue": "^4.0.0",
"jsdom": "^11.6.2"
},
"babel": {
"presets": [
"es2015"
]
}
}