课程名称:2022升级 React18+TS高仿AntD从零到一打造组件库
课程章节: 第2章 欢迎来到类型的世界 - Typescript
主讲老师:张轩
课程内容:
今天学习的内容包括:
2-13 类型别名和类型断言
2-14 声明文件 第一部分
2-15 声明文件 第二部分
课程收获:
类型别名 type aliases
联合类型时,抽取某个类型出来为别名
类型断言 type assertion
function plus( a: number, b: numer ): number{
return a + b
}
const plus2: (a: number, b: numer) => number =plus
type numberResolver = (a: number, b: numer) => number // 指定别名
const plus3: numberResolver = plus
type NameResolver = ()=> string // 指定别名
type NameOrResolver = string | NameResolver // 联合类型
function getName (n: NameOrResolver ) : string {
if( type == 'string' ){ return n }
else { return n( ) }
}
使用ts进行开发的时候,不可避免的需要引用第三方的 JS 的库,但是默认情况下TS是不认识我们引入的这些JS库的。所以在使用这些JS库的时候, 我们就要通过声明文件告诉TS它是什么, 怎么用。
1、声明的定义与使用在同一文件中
2、声明的定义与使用不放在同一文件
声明文件有很多种。
1、全局库:
所有功能绑定到全局变量或全局对象上,参照https://www.typescriptlang.org/docs/handbook/declaration-files/by-example.html中的模板,自行编写声明文件,如:
Global .d.ts
Global-plugin .d.ts
Global: Modifying Module .d.ts
2、cmd md【可以通过require、import导入】:
参照https://www.typescriptlang.org/docs/handbook/declaration-files/by-example.html中的模板,自行编写声明文件,如
Modules .d.ts
Module: Plugin
Module: Class
Module: Function
- 常用的第三方库,
对于常用的第三方库,其实已经有大神帮我们编写好了对应的声明文件,所以在企业开发中,如果我们需要使用一些第三方JS库的时候,我们只需要安装别人写好的声明文件即可。