关于 Angular 应用 tsconfig.json 中的 target 属性

2022-03-11

我新建了一个应用,在自动生成的.json文件中,is,is。

图片[1]-关于 Angular 应用 tsconfig.json 中的 target 属性-唐朝资源网

在应用中,只有es5:

图片[2]-关于 Angular 应用 tsconfig.json 中的 target 属性-唐朝资源网

现代浏览器支持所有 ES6 特性,所以 ES6 是一个不错的选择。如果您的代码部署到较旧的环境,您可以选择设置较低的目标;如果您的代码保证在较新的环境中运行,您可以选择设置较高的目标。

图片[3]-关于 Angular 应用 tsconfig.json 中的 target 属性-唐朝资源网

目标设置更改了哪些 JS 功能被降级,哪些保持不变。例如,如果面向 ES5 或更低版本,箭头函数 () => this 将被转换为等效的函数表达式。

例如,在ng build出来后的.js文件中,所有箭头函数都转换为常用用法:

图片[4]-关于 Angular 应用 tsconfig.json 中的 target 属性-唐朝资源网

图片[5]-关于 Angular 应用 tsconfig.json 中的 target 属性-唐朝资源网

图片[6]-关于 Angular 应用 tsconfig.json 中的 target 属性-唐朝资源网

更改目标也会更改 lib 的默认值。您可以根据需要“混合和匹配”目标和库设置,但为方便起见,您可以只设置目标。

对于像 Node 这样的开发者平台,有目标的基线,具体取决于平台的类型及其版本。您可以找到一组社区组织的 ,其中包含常见平台及其版本的配置。

特殊值是指您的版本支持的最高版本。应谨慎使用此设置,因为它在版本之间并不意味着相同,并且会使升级更加不可预测。

默认情况下,所有可见的“@types”包都包含在您的编译中。任何封闭文件夹的 /@types 中的包都被视为可见。例如,这意味着 .//@types/、..//@types/、../..//@types/ 等中的包。

图片[7]-关于 Angular 应用 tsconfig.json 中的 target 属性-唐朝资源网

如果指定了类型,则仅列出的包将包含在全局范围内。例如:

{
  "compilerOptions": {
    "types": ["node", "jest", "express"]

图片[8]-关于 Angular 应用 tsconfig.json 中的 target 属性-唐朝资源网

} }

此 .json 文件将仅包含 .//@types/node、.//@types/jest 和 .//@types/ 。 /@types/* 下的其他包将不包括在内。

图片[9]-关于 Angular 应用 tsconfig.json 中的 target 属性-唐朝资源网

更多杰瑞的原创文章可在:“王子熙”:

图片[10]-关于 Angular 应用 tsconfig.json 中的 target 属性-唐朝资源网

分类:

技术要点:

相关文章:

© 版权声明
THE END
喜欢就支持一下吧
点赞10赞赏 分享
评论 抢沙发
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情代码图片

    暂无评论内容