TS类型声明文件
类型声明文件概述
项目中的TS最终都会编译成JS,那我们在使用外部的三方库时,如何使用TS语法呢。
类型声明文件:用来为已存在的JS库提供类型信息
TS文件类型
- .ts文件
- 既包含类型信息又可执行代码
- 可以被编译为js文件,然后执行代码
- 用途:编写程序代码的地方
- .d.ts文件
- 只包含类型信息的类型声明文件
- 不会生成js文件,仅用于提供类型信息
- 用途:为JS提供类型信息
如果要为JS库提供类型信息,就要用到.d.ts文件
使用已有的类型声明文件
使用内置API类型声明文件
windows系统按ctrl键点击内置API即可打开文件
使用第三方库的类型声明文件
- 下载库时自带类型声明文件
- 由DefinitelyTyped提供
在TypeScript官网搜索下载即可
创建自己的类型声明文件
项目内共享类
如果多个ts文件都用到同一类型,可以创建.d.ts文件提供该类型,实现类型共享
- 创建index.d.ts类型声明文件
- 创建需要共享的类型,使用export导出
- 使用时通过import导入,省略.d.ts
为已有的JS文件提供类型声明
在导入一个js文件时,TS会自动加载于js文件同名的.d.ts文件
使用declare关键字:用于类型声明,为js文件中已存在的变量声明类型,而不是创建一个新的变量
// .js文件
let count = 1
// .d.ts文件
declare let count: number
对于type、interface这些TS特有的,就可以省略declare;对于let、function等JS和TS都能使用的,应该使用declare关键字