【日常记录】【JS】@babel/core @babel/polyfill @babel/preset-env core-js 介绍
warning:
这篇文章距离上次修改已过187天,其中的内容可能已经有所变动。
Babel是一个JavaScript编译器,可以将ES6+的代码转换为向后兼容的JavaScript版本,使得开发者可以使用最新的JavaScript特性。
@babel/core
是Babel编译器的核心库,负责编译工作。
@babel/polyfill
是一个模拟ES6+环境的库,能够在旧版浏览器中提供ES6+的全局模拟,但已经被废弃,建议使用 core-js
和 regenerator-runtime
替代。
@babel/preset-env
是一个预设,用于根据配置的目标环境自动转换ES6+的特性,转换时会引入必要的core-js
polyfill。
core-js
是提供JavaScript核心功能的库,比如Promise、Set、Map等新特性,以及封装了不同版本的兼容实现。
示例配置
{
"presets": [
[
"@babel/preset-env",
{
"targets": "> 0.25%, not dead"
}
]
],
"plugins": [
"@babel/plugin-proposal-class-properties",
"@babel/plugin-proposal-object-rest-spread"
]
}
在这个配置中,@babel/preset-env
根据指定的目标环境(例如浏览器市场份额大于0.25%且还在维护的浏览器),自动转换ES6+代码到指定的目标环境兼容版本。同时,使用了两个插件来支持类属性和对象展开运算符的提案特性。
评论已关闭