本以爲兼容設置只需要一句import '@babel/polyfill'
,想來還是太年輕。按照網上的方案總是無法解決,應該是vue-cli升級後造成的。
現在總算搞定了,現給出我自己的方案,共四項設置:
安裝 @babel/polyfill
npm install @babel/polyfill --save-dev
在入口文件main.js 第一行引入
import '@babel/polyfill'
設置 babel.config.js
module.exports = {
presets: [
['@vue/app', {
useBuiltIns: 'entry'
}]
]
}
設置 browserslist
在package.json 中設置,或者在 .browserslistrc
文件中設置
"browserslist": [
"> 1%",
"last 2 versions",
"IE 11",
"IE 10"
]
設置 transpileDependencies
在 vue.config.js
設置, 該項不是必須的,要看你的項目中是否引用第三方 es6+
的插件。很不幸,我的項目中有一個,所以我的設置是:
module.exports = {
publicPath: './',
transpileDependencies: ["load-script-promise"]
}
再說兩句
以上設置,稍微有點點麻煩,也是不停查資料摸索出來的。
在我的項目中,上述步驟缺一不可。
不一定對所有人有所幫助,提供一個參考吧。