亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > JavaScript > 正文

Vue+webpack+Element 兼容問題總結(小結)

2019-11-19 13:14:32
字體:
來源:轉載
供稿:網友

項目中用到了Vue.js和Elenment-UI

Vue官方文檔中給出明確范圍:Vue 不支持 IE8 及以下版本,因為 Vue 使用了 IE8 無法模擬的 ECMAScript 5 特性。但它支持所有兼容 ECMAScript 5 的瀏覽器。

而且Element-UI支持IE10+及大多數瀏覽器。由此要用到Babel,主要用于將ECMAScript 2015+代碼轉換為舊瀏覽器或環境中向后兼容的JavaScript版本。在此之前,需要先搞清楚IE6~11是否支持es5:

  • IE6~IE8:不支持es5的所有語法;
  • IE9:支持除ECMAScript 5 Strict Mode外的es5語法;
  • IE10:支持es5的所有語法;
  • IEÏ11:支持es5所有語法及es6中const和Typed Arrays新語法

babel可以把同種語言的高版本規則翻譯成低版本規則,其轉譯過程也分為三個階段:parsing、transforming、generating。(1)解析步驟接收代碼并輸出 AST(抽象語法樹),這其中又包含兩個階段詞法分析和語法分析。詞法分析階段把字符串形式的代碼轉換為令牌(tokens)流。語法分析階段會把一個令牌流轉換成 AST 的形式,方便后續操作。(2) 利用我們配置好的plugins/presets把Parser生成的AST轉變為新的AST。(3)代碼生成步驟過程是深度優先遍歷整個 AST,然后構建可以表示轉換后代碼的字符串。

下面總結Babel的使用:

1、由于項目使用了webpack打包工具,安裝

npm install --save-dev babel-loader babel-core

2、在webpack.config.js中設置

module: {  rules: [   {    test: //.js$/,    loader: "babel-loader",    include: [     resolve("src"),     resolve("test"),    ],   },Ï  ]}

可以根據webpack中Module的選項來配置相應內容

3、在根目錄下創建.babelrc文件來添加插件,文件添加成功后,可以開始配置內容

首先,可以使用evn預設置,它支持ES2015+的轉換

npm install babel-preset-env --save-dev

在.babelrc文件中

{"presets":["evn"]}

如果沒有任何配置選項,babel-preset-env的行為與babel-preset-latest(或babel-preset-es2015、babel-preset-es2016和babel-preset-es2017一起)完全相同。

當然,還有可選的選項可以配置,例如:

  [   "env",   {    "modules": false,    "targets": {     "browsers": ["> 1%", "last 2 versions"]    }   }   "stage-2"  ],

evn中設置項所代表的意思:

  • targets.node 支持到哪個版本的
  • node targets.browsers 支持到哪個版本的瀏覽器
  • loose 啟動寬松模式,配合 webpack 的 loader 使用
  • modules 使用何種模塊加載機制
  • debug 開啟調試模式
  • include 包含哪些文件
  • exclude 排除哪些文件
  • useBuiltIns 是否對 babel-polyfill 進行分解,只引入所需的部分

targets.browsers是參考browserslist https://github.com/browserslist/browserslist設置瀏覽器條件。

設置了完成后,還需要用babel-polyfill來實現瀏覽器不能支持的原生代碼,在瀏覽器引入了相應的polyfill后,可以用新的內置對象比如 Promise 或者 WeakMap, 靜態方法比如 Array.from 或者 Object.assign, 實例方法比如 Array.prototype.includes。但是因為babel-polyfill是在原型鏈上直接添加方法,會污染全局變量,項目打包以后體積增大。

npm install --save babel-polyfill

若在應用程序的入口頂點引入,則

require("babel-polyfill");

如果在應用程序的入口點使用ES6的導入語法,則應該在入口點的頂部導入polyfill,以確保首先加載polyfills

import("babel-polyfill");

如果通過webpack.config.js,在入口處添加:

module.exports = { entry: ["babel-polyfill", "./app/js"] };

為了不污染全局對象和內置的對象原型,可以用babel-plugin-transform-runtime,在.babelrc文件中

"plugins": [  [   "transform-runtime",   {    "helpers": false,    "polyfill": true,    "moduleName": "babel-runtime"   }  ], ]

插件應用于babel的轉譯過程,尤其是第二個階段transforming,如果這個階段不使用任何插件,那么babel會原樣輸出代碼。
如果同時添加了plugins和presets,注意:插件會在預設項之前運行;插件按第一個到最后一個正序執行;預設中設置從最后一個到第一個逆序執行,設置時注意執行順序。

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持武林網。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
美日韩丰满少妇在线观看| 国产97色在线|日韩| 九九热精品视频| 国产在线观看精品一区二区三区| 亚洲欧美www| 91精品国产高清久久久久久91| 日韩中文字幕国产| 欧美激情精品久久久久久免费印度| 欧美香蕉大胸在线视频观看| 欧美中文字幕在线视频| 色综合伊人色综合网| 高清欧美性猛交| 精品国产一区二区三区久久久| 亚洲欧洲一区二区三区在线观看| 久久影院资源网| 色噜噜国产精品视频一区二区| 欧美国产日本高清在线| 亚洲天堂免费在线| 国内精品视频在线| 久久精品99无色码中文字幕| 黄网站色欧美视频| 国产精品久久久av久久久| 亚洲一区二区三区四区视频| 免费不卡在线观看av| 永久免费毛片在线播放不卡| 91九色国产社区在线观看| 日韩av网站电影| 久久久精品免费视频| 国产精品揄拍500视频| 欧美影院久久久| 欧美老女人xx| 538国产精品一区二区免费视频| 亚洲欧洲日本专区| 日韩精品一二三四区| 一区二区三区视频免费在线观看| 欧美激情一区二区久久久| 日韩av在线网址| 欧美激情喷水视频| 92国产精品视频| 国产亚洲精品久久| 久久久天堂国产精品女人| 久久免费视频观看| 777国产偷窥盗摄精品视频| 成人激情视频小说免费下载| 欧美日韩在线视频一区二区| 国产91露脸中文字幕在线| 国产成人精品免高潮在线观看| 色综合天天狠天天透天天伊人| 66m—66摸成人免费视频| 国产欧美日韩精品在线观看| 亚洲精品短视频| 91久久夜色精品国产网站| 91九色视频导航| 免费av一区二区| 亚洲性日韩精品一区二区| 日本一区二区在线免费播放| 国产精品露脸av在线| 免费99精品国产自在在线| 欧美二区乱c黑人| 在线播放日韩专区| 亚洲爱爱爱爱爱| 中文字幕日韩精品在线| 久久躁狠狠躁夜夜爽| 日韩精品免费在线播放| 人人澡人人澡人人看欧美| 亚洲第一视频网站| 久久国产精品久久久| 国产精品久久久av| 在线日韩欧美视频| 色播久久人人爽人人爽人人片视av| 国产精品aaa| 亚洲影院色在线观看免费| 亚洲国产另类 国产精品国产免费| 中文字幕国产精品久久| 国产99久久精品一区二区 夜夜躁日日躁| 7777精品视频| 欧美激情视频在线免费观看 欧美视频免费一| 国产欧美精品在线播放| 日韩亚洲欧美中文高清在线| 欧美黑人巨大精品一区二区| 亚洲精品资源美女情侣酒店| 国产精品永久免费在线| 久久五月情影视| 亚洲自拍偷拍色片视频| 欧美性理论片在线观看片免费| 91日韩在线视频| 久久亚洲电影天堂| 欧美激情极品视频| 国产精品美女久久久久av超清| 欧美午夜精品久久久久久人妖| 亚洲国产精品久久91精品| 日韩av网站大全| 国产日本欧美一区二区三区| 国产精品免费视频久久久| 欧美午夜激情视频| 成人免费直播live| 亚洲电影免费观看高清完整版在线观看| 国产91精品青草社区| 亚洲成人亚洲激情| 日韩av在线一区| 韩国欧美亚洲国产| 国产精品日本精品| 91精品国产综合久久香蕉922| 在线不卡国产精品| 91精品国产91久久| 伦伦影院午夜日韩欧美限制| 亚洲影影院av| 欧美—级a级欧美特级ar全黄| 韩剧1988免费观看全集| 国产精品第3页| 久久久久成人网| 国产精品成人一区二区三区吃奶| 精品爽片免费看久久| 性色av一区二区咪爱| 精品国偷自产在线| 久久露脸国产精品| 性色av一区二区三区在线观看| 国产成+人+综合+亚洲欧美丁香花| 亚洲激情视频在线| 国产91露脸中文字幕在线| 日韩精品在线免费观看视频| 成人精品久久av网站| 欧美大尺度激情区在线播放| 97人人爽人人喊人人模波多| 欧美日韩国产色| 亚洲成人999| 亚洲成人av在线播放| 国产激情久久久久| 庆余年2免费日韩剧观看大牛| 91亚洲午夜在线| 中文字幕免费精品一区高清| 国产免费一区二区三区在线能观看| 一区二区成人精品| 欧美成人第一页| 久久久久久久影视| 亚洲精品v欧美精品v日韩精品| 亚洲精品久久久久中文字幕欢迎你| 精品久久久久久久久久| 国产亚洲精品久久久久久777| 另类专区欧美制服同性| 欧洲日韩成人av| 日本不卡高字幕在线2019| 久久久久久久一区二区三区| 中文字幕成人在线| 欧美亚洲午夜视频在线观看| 国产裸体写真av一区二区| 日韩免费看的电影电视剧大全| 伊人成人开心激情综合网| 精品久久久久久久大神国产| 国产亚洲人成a一在线v站| 人人爽久久涩噜噜噜网站| 97久久久久久| 国产在线播放91| 97精品久久久中文字幕免费| 国产精品主播视频| 在线观看91久久久久久| 亚洲天堂一区二区三区| 欧美xxxx18性欧美| 日本久久久久亚洲中字幕| www.亚洲免费视频| 亚洲第一福利网站| 国产精品久久久久久久av电影| 国产成人精品视| 日韩专区中文字幕|