Babel默認(rèn)只轉(zhuǎn)換新的JavaScript句法(syntax)几缭,而不轉(zhuǎn)換新的API河泳,比如Iterator、Generator年栓、Set拆挥、Maps、Proxy某抓、Reflect纸兔、Symbol、Promise等全局對(duì)象否副,以及一些定義在全局對(duì)象上的方法(比如Object.assign)都不會(huì)轉(zhuǎn)碼汉矿。
舉例來說,ES6在Array對(duì)象上新增了Array.from方法备禀。Babel就不會(huì)轉(zhuǎn)碼這個(gè)方法洲拇。如果想讓這個(gè)方法運(yùn)行奈揍,必須使用babel-polyfill,為當(dāng)前環(huán)境提供一個(gè)墊片赋续。
安裝
命令行
npm ?install --save babel-polyfill
要使用墊片你需要在應(yīng)用開頭的入口引入男翰。
require("babel-polyfill")
如果你的英文入口使用ES6import語法,你應(yīng)該在入口的開頭替代導(dǎo)入墊片纽乱,以保證他是最先加載的:
import ?'babel-polyfill'
在webpack.config.js中加入babel-polyfill到你的入口數(shù)組:
module.exports= {? ? entry:["babel-polyfill","./app/js"]}