如何在Angular16中使用babel

5cg8jx4n  于 11个月前  发布在  Babel
关注(0)|答案(1)|浏览(225)

在angualr 16中,我们可以设置browserslist来控制输出的目标。当我设置如下“browserslist”:[“Chrome 80”],并进行ng构建,然后将构建目标设置为ES 2015
但是我想使用ES 2022的新功能,例如array.at,我发现输出不是降级的,JavaScript仍然使用array.at,无法在Chrome 80中执行,原因是TypeScript编译器只执行语法的降级(可通过特殊字符识别,如=>,?、`、#和关键字(如class或static),但它不会降低API本身的级别。如果您需要polyfill API调用,例如ES 2019中引入的Array.prototype.flat,则需要额外的JavaScript编译器,例如Babel。
所以angualr 16 alreadz支持这种情况下,或者我需要做一些额外的设置巴别塔,谢谢!

izj3ouym

izj3ouym1#

v16 Angular CLI将target值覆盖为ES2022
在引擎盖下,它使用babel和browserlist通过编译必要的代码来确保浏览器支持你所需要的。
因此,如果您正确设置了浏览器列表,则无需执行其他操作。

相关问题