关于babel-polyfill的介绍与使用
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']