Babel 默認只轉換新的 JavaScript 句法(syntax),而不轉換新的 API,比如Iterator、Generator、Set、Map、Proxy、Reflect、Symbol、Promise等全局對象,以及一些定義在全局對象上的方法(比如Object.assign)都不會轉碼。
舉例來說,ES6 在Array對象上新增了Array.from方法。Babel 就不會轉碼這個方法。如果想讓這個方法運行,必須使用babel-polyfill,為當前環境提供一個墊片。
在使用之前,先安裝
npm i --save-dev babel-polyfill
目前,使用babel-polyfill有三種方式:
一、在js文件中
import 'babel-polyfill';
二、在node中:
require('babel-polyfill');
三、在webpack中的entry入口中
entry: {
key1:[ 'babel-polyfill','./src/main.js']
}
或者
entry:['babel-polyfill','./src/main.js']
