项目里在script使用了ES2020(??、?.)没有报错。但是在template里也使用了ES2020(??、?.),启动项目时报错。
解决:
安装
npm install @babel/plugin-proposal-optional-chaining --save-dev
npm install vue-template-babel-compiler --save-dev
package.json:
"devDependencies": {
"vue-template-babel-compiler": "^2.0.0",
"@babel/plugin-proposal-optional-chaining": "^7.16.0",
}
配置
方法两选一就行。
方法一:
然后在.babelrc.js文件夹里进行配置
plugins:"@babel/plugin-proposal-optional-chaining",
方法二: babel.config.js:
module.exports = {
plugins: [
'@babel/plugin-proposal-optional-chaining'
]
}
vue.config.js:
chainWebpack: config => {
config.module
.rule('vue')
.use('vue-loader')
.tap(options => {
options.compiler = require('vue-template-babel-compiler')
return options
})
}
如果是js中报错
安装Babel插件:
npm install @babel/plugin-proposal-optional-chaining --save-dev
Babel配置文件(如.babelrc或babel.config.js)中添加插件:
`{
"plugins": ["@babel/plugin-proposal-optional-chaining"]
}`