您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

Babel babel-polyfill

Babel 包含可的 和 的 。

它会仿效完整的 ES2015+ 环境,并意图运行于应用中而不是库/工具。这个 polyfill 会在使用 时加载。

这意味着你可以使用新的内置对象比如 Promise 或者 WeakMap, 静态比如 Array.from 或者 Object.assign, 实例比如 Array.prototype.includes 和器(提供给你使用 )。为了达到这一点, polyfill 到了全局范围,就像原生类型比如 String 一样。

安装

npm install --save babel-polyfill

因为这是 polyfill (它需要在你的源之前运行),我们需要让它成为 dependency,而不是 devDependency 。

在 Node / Browserify / Webpack 中使用

你需要在你的应用入口顶部通过 require 将 polyfill 引入进来。

确保它在任何其他/依赖声明之前被!

require("babel-polyfill");

如果你在你的应用入口使用 ES6 的 import 语法,你需要在入口顶部通过 import 将 polyfill 引入,以确保它能够最先加载:

import "babel-polyfill";

在 webpack.con.js 中,将 babel-polyfill 加到你的 entry 数组中:

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

在浏览器中使用

可以在 babel-polyfill npm 发布版中的 dist/polyfill.js 中找到它。 它需要在你编译过的 Babel 之前被进去。你可以将它追加到你编译过的中,或者些之前通过 <script> 引入它。

注意: 不要通过类似 browserify 等手段来 require 它,用 babel-polyfill。

细节

如果你在寻找可以在工具/库中使用的不会全局的东西,请查阅 。这意味着你将不能使用上文中提到的实例,比如 Array.prototype.includes 。

注意:你可能不需要 babel-polyfill 或者运行时,这取决于你实际想用 ES2015 中的哪个。你可能只想 (比如 Object.assign),或者只是记录加载 library 的环境应该包含特定的 polyfills 。


联系我
置顶