【前端】什么是d.ts文件,它是不是typescript文件?

定义

TypeScript是JavaScript类型的超集,它的扩展名是.ts

  • TypeScript是一门强类型语言,它的变量在使用前,都必须声明类型
  • TypeScript可以将大量变量的类型声明统一提取到单独的文件,此类文件被称为声明文件,它的文件扩展名是.d.ts,它可以被TypeScript解释器读取,并且能直观地表示出各种变量的使用方式
  • 由于TypeScript是JavaScript的超集,所以声明文件也能用来表示JavaScript脚本的使用方式
  • 一般来讲,组织声明文件的方式取决于库是如何被使用的。

传送门:https://www.tslang.cn/docs/handbook/declaration-files/introduction.html

如何引用

  1. 在你需要声明的.js.ts文件的同一位置,插入你的同名.d.ts文件。
    |-- src
      |-- index.js
      |-- index.d.ts
      |-- app.ts
      |-- app.d.ts
    
  2. package.json文件有一个types(或typings)属性专门用来定义main入口文件的声明文件路径。
  3. npm仓库里有一个@types组织,专门用来存放库的声明文件,引用时只需要安装npm install --save-dev @types/库名即可。
    • 所有人都可以申请将自己的所有声明文件按规范提交到@types中去。
    • 例如jest测试库的声明文件就储存在@types/jest中。
    • @types下面还有很多底层类的声明文件,比如NumberString等在@types/code-js里都有声明。
    • 传送门:https://github.com/DefinitelyTyped/DefinitelyTyped
  4. 在声明文件中使用/// 头,来引入依赖的其它声明。

    types指某个其它声明的库,而不是声明文件的路径。

问题

为什么我在编辑器中选择Promise类进行溯源,会给我打开了一个lib.es2015.promise.d.ts文件?其中有对Promise的声明。而我的项目中明明没有这个文件。
:因为你的项目或者编辑器,通过某种引用方式(上面的3或4方式),引用了这个声明文件。

总结

多看看官方文档,写代码总是很简单。

你可能感兴趣的:(web前端,前端,typescript,javascript)