Angular 11默认TypeScript配置中,目标设置为'es2015',库设置为'es2018',但没有polyfill。
在Angular中,TypeScript配置是用来指定编译目标和使用的库的。目标指定了编译后的JavaScript代码应该符合的ECMAScript版本,而库指定了可用的JavaScript库。
目标为'es2015'意味着编译后的代码将符合ECMAScript 2015(也称为ES6)的语法规范。这意味着你可以使用ES6的新特性,如箭头函数、模板字符串、解构赋值等。然而,由于ES6在一些旧版浏览器中不被完全支持,所以需要使用polyfill来填补这些缺失的功能。
库为'es2018'表示你可以使用ES2018的JavaScript库,这些库提供了一些新的功能和API,如Promise.finally()、Object.fromEntries()等。
在默认配置中,Angular 11没有包含polyfill。这意味着如果你使用了一些ES6或ES2018的新特性,而目标浏览器不支持这些特性,你的应用可能无法在这些浏览器中正常运行。
为了解决这个问题,你可以手动添加polyfill。Angular提供了一个名为"core-js"的polyfill库,它可以填补浏览器对ES6和ES2018功能的支持不足。你可以通过以下步骤来添加polyfill:
添加了polyfill后,编译后的代码将包含所需的功能,以便在不支持这些功能的浏览器中正常运行。
总结: Angular 11默认TypeScript配置中,目标为'es2015',库为'es2018',但没有包含polyfill。如果你使用了一些ES6或ES2018的新特性,并且需要在不支持这些特性的浏览器中运行你的应用,你需要手动添加polyfill。你可以使用"core-js"库来填补浏览器对这些功能的支持不足。
领取专属 10元无门槛券
手把手带您无忧上云