Angularjs   发布时间:2022-04-20  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了Angular2 开发者的 TypeScript 配置大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

TypeScript 是 Angular 应用开发中使用的主语言。 它是 JavaScript 的“方言”之一,为类型安全和工具化而做了设计期支持

浏览器不能直接执行 TypeScript 。它得先用tsc编译器转译 (transpilE) 成 JavaScript ,而且编译器需要进行一些配置。

页面会覆盖 TypeScript 配置与环境的某些方面,这些对 Angular 开发者是很重要的。具体来说包括下列文件

@H_502_8@
  • tsconfig.json- TypeScript 编译器配置。

  • typings- TypesScript 类型声明文件

  • tsconfig.json

    我们通常会往项目中加入一个 TypeScript 配置文件 (tsconfig.json) ,来指导编译器如何生成 JavaScript 文件

    { "compilerOptions":  "target" "es5", "module" "commonjs" "moduleResolution" "node" "sourceMap" true "emitDecoratorMetadata" "experimentalDecorators" "removeComments"false "noImplicitAny"false}}

    文件中的选项和标志是写 Angular 应用程序的基础。

    noImplicitAny与suppressImplicitAnyIndexErrors

    TypeScript 开发者们在标志应该是还是上存在分歧。 这没有标准答案,我们以后还可以修改这个标志。 但是我们的选择会在大项目中产生显著差异,所以它值得讨论一番。

    当标志是( 认值 ) 时, 如果编译器无法根据变量的用途推断出变量的类型,它就会悄悄的把变量类型认为。这就是隐式的含义。

    我们在“快速起步”中把标志初始化为,这是为了让学习 TypeScript 开发更简单点。

    当标志是并且 TypeScript 编译器无法推断出类型时,它仍然会生成 JavaScript 文件。 但是它也会报告一个错误。 很多饱经沧桑的程序员更喜欢这种严格的设置,因为类型检查能在编译期间捕获更多意外错误

    即使标志被设置成了,你也可以把变量的类型设置为。

    如果我们把标志设置为了,我们可能会得到隐式索引错。 大多数程序员可能觉得这种错误是个烦恼而不是助力。 我们可以使用另一个标志来禁止它们。

    
     
     

    TypeScript 类型定义 (typings)

    很多 JavaScript 库,比如 jQuery 、 Jasmine 测试库和 Angular ,会通过新的特性和语法来扩展 JavaScript 环境。 而 TypeScript 编译器并不能原生的识别它们。 当编译器不能识别时,它就会抛出一个错误

    我们可以使用TypeScript 类型定义文件——文件——来告诉编译器要加载的库的类型定义。

    TypeScript 敏感的编辑器借助这些定义文件显示这些库中各个特性的类型定义。

    很多库在自己的 npm 包中都包含了它们的类型定义文件, TypeScript 编译器和编辑器都能找到它们。 Angular 库也是这样的。 任何 Angular 应用程序的目录下,都包含几个文件,它们描述了 Angular 的各个部分。

    我们不需要为那些包含了文件的库获取类型定义文件—— Angular 的所有包都是如此。

    安装类型定义文件

    遗憾的是,很多库—— jQuery 、 Jasmine 和 Lodash 等库——都没有在它们自己的 npm 包中包含文件。 幸运的是,它们的作者或社区中的贡献者已经为这些库创建了独立的文件,并且把它们发布到了一个众所周知的位置。

    We can install these typings viausing thescoped packageand Typescript (starTing at 2.0) will automatically recognize them.

    For instance,to install typings forwe Could do.

    我们在“快速起步”中指定过三个类型定义文件():

    @H_502_8@
  • core-js是为 ES5 浏览器添加 ES2015/ES6 特性的类型定义

  • jasmine是 Jasmine 测试框架的类型定义

  • node是为了在nodejs环境中引用对象的代码提供的类型定义。 在webpack页面可以看到例子。

  • noImplicitAnytruefalsenoImplicitAnyfalseanyanynoImplicitAnyfalsenoImplicitAnytruenoImplicitAnytrueanynoImplicitAnytrue"suppressImplicitAnyIndexErrors":@H_673_181@true .d.tsnode_modules/@angular/core/d.tsd.tsd.tsd.tsnpm@types/*jasminenpm install @types/jasmine --save-devd.ts

    大佬总结

    以上是大佬教程为你收集整理的Angular2 开发者的 TypeScript 配置全部内容,希望文章能够帮你解决Angular2 开发者的 TypeScript 配置所遇到的程序开发问题。

    如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

    本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
    如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。