部分的
Partialを使用すると、インターフェイスタイプで定義されているすべてのプロパティをすばやくオプションにすることができます。
栗を取る:
interface ApiKey {
id: number;
name: string;
}
const dataType1: ApiKey = {
id: 1,
name: 'static'
}
const dataType2: ApiKey = {
name: 'json'
}
このコードは、コンパイル時にエラーを出します。
error TS2741: Property 'id' is missing in type '{ name: string; }' but required in type 'ApiKey'.Key'.
ApiKeydataType2
のタイプはApiKeyであるため、ApiKeyの中和id
がname
必要であり、コンパイルエラーが発生します。のパラメータがオプションの場合ApiKey
、この問題は発生しなくなり、役割はここにあります。これは、のすべてのプロパティをオプションにするのにPartial
役立ちます。ApiKey
Partial
この栗を書き直すために使用します。
interface ApiKey {
id: number;
name: string;
}
const dataType1: ApiKey = {
id: 1,
name: 'static'
}
const dataType2: Partial<ApiKey> = {
name: 'json'
}
このとき、エラーなしで実行されます。