目次
部分的
役割: すべての属性をオプションのタイプに設定します
interface Props {
name: string,
children: number[]
}
type PartialProps = Partial<Props>
let obj: PartialProps = {
name: '111',
children: [1,2,3]
}
読み取り専用
役割: すべてのプロパティを読み取り専用に設定します。
interface Props {
name: string,
children: number[]
}
type PartialProps = Readonly<Props>
let obj: PartialProps = {
name: '111',
children: [1,2,3]
}
obj.name = '222'
選ぶ
Pick<Type, Keys> は、Type からプロパティのセットを選択して、新しい型を構築します
2 番目の型変数に入力がない場合、使用時にエラーが報告されます。
正しく渡されれば正常に使用できます
interface Props {
id: number,
name: string,
children: number[]
}
type PartialProps = Pick<Props, 'id' | 'name'>
let obj: PartialProps = {
id: 18,
name: '111'
}
記録
Record<Keys, Type> はオブジェクト タイプを作成します。属性キーは Keys、属性値は Type です。
レコードは 2 つのパラメータ、1. オブジェクトが持つ属性、2. 属性のタイプを渡す必要があります。
type RecordObj = Record<'a' | 'b' | 'c', number[]>
let obj: RecordObj = {
a: [1,2,3],
b: [1,2,3],
c: [1,2,3],
}
対応する型が渡されない場合、エラーが報告されます。