Open jtwang7 opened 2 years ago
✅ 利用 Omit<T, R> 方法先过滤字段,然后将新的属性拼接到目标对象类型上
Omit<T, R>
interface A { x: string; } export type B = Omit<A, 'x'> & { x: number };
❇️ 进一步,我们可以将该逻辑分装为一个函数
type Modify<T, R> = Omit<T, keyof R> & R;
❇️ ts 获取 interface 中某个成员字段的类型
ts 可以像 js 一样通过索引来获取成员字段对应的类型值,但是只支持 [] 索引,不支持 . 索引
[]
.
interface Word { x: { y: number } } type Y = Word['x']['y']
注意: [] 内传入的是字段字符串,用 '' 包裹,否则将会被识别为变量而报错
''
TypeScript 修改(覆盖)类型对象中的某个属性类型
✅ 利用
Omit<T, R>
方法先过滤字段,然后将新的属性拼接到目标对象类型上❇️ 进一步,我们可以将该逻辑分装为一个函数
❇️ ts 获取 interface 中某个成员字段的类型
注意:
[]
内传入的是字段字符串,用''
包裹,否则将会被识别为变量而报错