- Partial<Type>
- Readonly<Type>
- Pick<Type, Keys>
- Record<Keys, Type>
Partial<Type>
用來(lái)構(gòu)造 (創(chuàng)建) 一個(gè)類(lèi)型剥懒, 將 Type 的所有屬性設(shè)置為可選
interface Props{
id:string
children:number[]
}
type PartialProps=Partial<Props>
Readonly<Type>
用來(lái)構(gòu)造一個(gè)類(lèi)型屯伞, 將 Type 的所有屬性都設(shè)置為 readonly (只讀 )
interface Props{
id:string
children:number[]
}
type ReadonlyProps=Readonly<Props>
構(gòu)造出來(lái)的結(jié)構(gòu)完全相同容客,但所有屬性為只讀
Pick<Type, Keys>
從 Type 中選擇一組屬性來(lái)構(gòu)造新類(lèi)型
interface Props{
id:string
children:number[]
}
type PickProps=Pick<Props,'id'>
//想當(dāng)于又聲明了 一個(gè){id:string}類(lèi)型
Record<Keys,Type>
構(gòu)造一個(gè)對(duì)象類(lèi)型,屬性鍵為 Keys 柄慰,屬性類(lèi)型為 Type。
type Recordtype = Record<'id'|'name',string>
//想當(dāng)于
interface Recordtype{
id:string
name:string
}