vue3中,框架下载完就会自动配置上兼容代码,但是未对node_modules中依赖进行处理,可以在babel.config.js中进行以下配置:
module.exports = {
presets: ['@vue/cli-plugin-babel/preset'],
plugins: [
'@babel/plugin-proposal-optional-chaining',
'@babel/plugin-proposal-nullish-coalescing-operator'
]
}
打包后测试,如果还存在其未编译内容,使用编写代码工具全局查询,找到对应依赖后,在vue.config.js中进行以下配置:
module.exports = defineConfig({
// 需要进行编译的依赖,如vueuse
transpileDependencies:[
/@vueuse/
]
})
补充:
使用cli-plugin-babel,可以查看源码和官网介绍,源码对两个文件有匹配,一个是babel.config.js,还有一个就是.browserslistrc
.browserslistrc文件中配置相当于@babel/preset-env中的targets属性。通过 .browserslistrc 文件,你可以指定支持的浏览器范围,以确保你的代码兼容目标环境。
如:
支持具有特定市场份额的浏览器:
> 0.5%
:支持市场份额超过 0.5% 的浏览器。> 1%
:支持市场份额超过 1% 的浏览器。> 0.25%
:支持市场份额超过 0.25% 的浏览器。> 5%
:支持市场份额超过 5% 的浏览器。指定浏览器和平台的最低版本:
ie 11
:仅支持 Internet Explorer 11。ios_saf 12.0
:支持 iOS Safari 12.0。排除已停止维护的浏览器:not dead
:排除已停止维护的浏览器。例如,IE8 和 Safari 5 就是已经停止维护的浏览器。
支持最近的某些版本:last 2 versions
:支持所有主流浏览器的最后两个版本。last 3 major versions
:支持主流浏览器的最后三个主版本。