欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Vue的兼容性解決方案Babel-polyfill案例解析

 更新時(shí)間:2023年11月07日 17:02:54   作者:前端扎啤  
這篇文章主要介紹了Vue的兼容性解決方案Babel-polyfill的相關(guān)知識(shí),本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友參考下吧

Babel-polyfill可以抹去舊版本瀏覽器不熟悉的特征,在babel.config.js中寫出

在這里插入圖片描述

如果有依賴需要 polyfill,你有幾種選擇:

1. 如果確切知道有兼容性問題的依賴包名,可以配置項(xiàng)目根目錄下的vue.config.js,將依賴包名添加到transpileDependencies鍵中,這會(huì)為該依賴同時(shí)開啟語(yǔ)法語(yǔ)法轉(zhuǎn)換和根據(jù)使用情況檢測(cè) polyfill。

例如:

module.exports = {
  transpileDependencies: ["sl-vue-tree"] // 需要編譯的依賴包名
}

2.如果確切的知道需要轉(zhuǎn)譯的語(yǔ)言特性,可以配置根目錄下的babel.config.js,為presets的值添加所需要的 polyfill。

// babel.config.js
module.exports = {
  presets: [
    ['@vue/app', {
      polyfills: [
        'es6.promise',
        'es6.symbol'
      ]
    }]
  ]
}

如果相關(guān)依賴帶ES5代碼并明確列出所需的polyfill:您可以使用@vue / babel-preset-app的polyfills選項(xiàng)預(yù)先包含所需的polyfill。請(qǐng)注意,es6.promise是默認(rèn)包含的,因?yàn)閘ibs依賴Promises是很常見的。

3.然而更多的情況是,我們并不確切的知道項(xiàng)目中引發(fā)兼容問題的具體原因,這時(shí)還可以配置為根據(jù)兼容目標(biāo)導(dǎo)入所有 polyfill,需要設(shè)置babel.config.js為:

module.exports = {
  presets: [
    ['@vue/app', {
        useBuiltIns: 'entry'
    }]
  ]
}

同時(shí)在入口文件(main.js)第一行添加

import '@babel/polyfill

這會(huì)根據(jù) browserslist 目標(biāo)導(dǎo)入所有 polyfill,這樣你就不用再擔(dān)心依賴的 polyfill 問題了,但是因?yàn)榘艘恍]有用到的 polyfill 所以最終的包大小可能會(huì)增加。

到此這篇關(guān)于Vue的兼容性解決方案Babel-polyfill的文章就介紹到這了,更多相關(guān)Vue兼容性內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評(píng)論