Đối với Babel phiên bản 7, nếu bạn đang sử dụng @ babel / preset-env, để bao gồm polyfill, tất cả những gì bạn phải làm là thêm một cờ 'useBuiltIns' với giá trị 'cách sử dụng' trong cấu hình babel của bạn. Không cần phải yêu cầu hoặc nhập polyfill tại điểm vào của Ứng dụng của bạn.
Với cờ này được chỉ định, babel @ 7 sẽ tối ưu hóa và chỉ bao gồm các polyfill bạn cần.
Để sử dụng cờ này, sau khi cài đặt:
npm install --save-dev @babel/core @babel/cli @babel/preset-env
npm install --save @babel/polyfill
Chỉ cần thêm cờ:
useBuiltIns: "usage"
vào tệp cấu hình babel của bạn được gọi là "babel.config.js" (cũng mới đối với Babel @ 7), trong phần "@ babel / env":
// file: babel.config.js
module.exports = () => {
const presets = [
[
"@babel/env",
{
targets: { /* your targeted browser */ },
useBuiltIns: "usage" // <-----------------*** add this
}
]
];
return { presets };
};
Tài liệu tham khảo:
Cập nhật tháng 8 năm 2019:
Với việc phát hành Babel 7.4.0 (ngày 19 tháng 3 năm 2019) @ babel / polyfill bị phản đối. Thay vì cài đặt @ babe / polyfill, bạn sẽ cài đặt core-js:
npm install --save core-js@3
Một mục mới corejs
được thêm vào babel.config.js của bạn
// file: babel.config.js
module.exports = () => {
const presets = [
[
"@babel/env",
{
targets: { /* your targeted browser */ },
useBuiltIns: "usage",
corejs: 3 // <----- specify version of corejs used
}
]
];
return { presets };
};
xem ví dụ: https://github.com/ApolloTang/stackoverflow-eg--babel-v7.4.0-polyfill-w-core-v3
Tài liệu tham khảo:
npm install _name_