最近做了一個基於Vue的項目,需要兼容IE瀏覽器,目前實現了打包后可以在IE10以上運行,但是還不支持在運行時兼容IE10及以上。
安裝依賴
yarn add --dev @babel/polyfill
在入口文件 main.js
引入依賴
import '@babel/polyfill';
修改 babel.config.js
module.exports = { presets: [ [ '@vue/app', { useBuiltIns: 'entry' } ] ], };
修改 .browserslistrc
> 1% last 2 versions not ie <= 10
修改 vue.config.js
默認情況下 babel-loader
會忽略所有 node_modules
中的文件。如果你想要通過 Babel
顯式轉譯一個依賴,可以在這個選項中列出來。
module.exports = { transpileDependencies: [] }
詳細說明可參見官方文檔https://cli.vuejs.org/zh/conf...
我在這里遇到一個問題,有的依賴不僅需要添加它自身到 transpileDependencies
中,還需要添加它的某些依賴到 transpileDependencies
中,如果官方文檔中沒有明確指出的話可能還是不能正確的配置。
這種情況我的解決方法是在 src
目錄下新建一個 utils
目錄,將依賴的js文件移到該目錄下,然后引入該目錄下的js文件。