TS 内置工具
1、Record -> 生产一个属性为K,类型为T的类型集合。
type React<K entends keyof any, T> = {
[P in K]: T;
}
用法
type Foo = Record<‘a’, string> // 相当于 type Foo = { a: string }
type Bar = {
b: string
}
type Baz = Record< keyof Foo | keyof Bar, number > // typ Baz = { a: number, b: number }
注解:可以用于创建 也可以用于合并然后重新赋值。 感觉没什么用
2、Partial-> 全部变可选 – 相反 Required -> 全部必选
type Partial = {
[P in keyof T]?: T[P];
};
用法
type IFoo = {
a?: string,
b: string
}
const foo: Partial = { a: ‘1’ } // 变为可选
const bar: Required<Partial> = { // 变为全部必选
a: ‘1’,
b: ‘2’
}
3、Readonly -> 全部只读 字面意思
type Readonly = {
版权声明:本文为weixin_43909372原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。