TypeScript学习笔记(十)声明文件
定义
- 必须以
.d.ts
为后缀的文件; - 用于存储声明语句的一个单独的文件。
第三方声明文件
- 使用
@types
统一管理第三方库的声明文件。 - 用 npm 安装对应的声明模块
1 | npm install @types/jquery --save-dev |
书写声明文件
- 库的使用场景主要有以下几种
全局变量
declare var/let/const 声明全局变量
- 一般来说,全局变量都是禁止修改的常量,所以大部分情况都应该使用 const 而不是 var 或 let。
- 声明语句中只能定义类型,切勿在声明语句中定义具体的实现。
declare function 声明全局方法
- declare function 用来定义全局函数的类型。
- 在函数类型的声明语句中,函数重载也是支持的。
declare class 声明全局类
- 当全局变量是一个类的时候,我们用 declare class 来定义它的类型。
- 同样的,declare class 语句也只能用来定义类型,不能用来定义具体的实现。
1 | // src/Animal.d.ts |
declare enum 声明全局枚举类型
- 使用 declare enum 定义的枚举类型也称作外部枚举(Ambient Enums)。
- declare enum 仅用来定义类型,而不是具体的值。
declare namespace 声明(含有子属性的)全局对象
- declare namespace 用来表示全局变量是一个对象,包含很多子属性。
interface 和 type 声明全局类型。
npm 包
UMD 库
直接扩展全局变量
在 npm 包或 UMD 库中扩展全局变量
模块插件
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 姚永坤的小窝!
评论