ES6的新API如Promise,Proxy,Array.form(),Object.assign()等,Babel不能轉碼, 使用babel-polyfill來解決


Babel默認只轉換新的JavaScript句法(syntax),而不轉換新的API,比如Iterator、Generator、Set、Maps、Proxy、Reflect、Symbol、Promise、Async等全局對象,以及一些定義在全局對象上的方法(比如Object.assign)都不會轉碼。

舉例來說,ES6在Array對象上新增了Array.from方法。Babel就不會轉碼這個方法。如果想讓這個方法運行,必須使用babel-polyfill,為當前環境提供一個墊片。

下面為具體配置方法
react及vue框架配置(使用webpack時,2、3項配置一個即可,推薦進行第3項配置)
1.安裝
   npm install --save babel-polyfill

2.在react或vue的項目入口文件頭部導入babel-ployfill

   import 'babel-polyfill';

3.在webpack的配置文件入口處,加入babel-polyfill

   {entry: [

  'babel-polyfill',

  paths.appIndexJs

   ]}

 

配置完成后便可以使用這些新API來愉快的開發

IE坑
1.IE打開為空白頁面,首先引入babel-polyfill.
2.IE就算是引入babel-polyfill依然無法使用Proxy對象,建議在IE中最好不要用
3.vue中按需引入iview組件在IE中報eval錯誤
(1).安裝babel-plugin-import
npm i babel-plugin-import -D

(2). 配置.babelrc文件,在plugins添加最后一項

(3). 按需引入並注冊為vue組件

(4)扯遠了,解決bug[qq:29],配置編譯導入組件的loader

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM