[TypeScript] TypeScriptAdvancedTypeの一部

部分的

Partialを使用すると、インターフェイスタイプで定義されているすべてのプロパティをすばやくオプションにすることができます。

栗を取る:

interface ApiKey {
    
    
  id: number;
  name: string;
}

const dataType1: ApiKey = {
    
    
  id: 1,
  name: 'static'
}

const dataType2: ApiKey = {
    
    
  name: 'json'
}

image.png

このコードは、コンパイル時にエラーを出します。

error TS2741: Property 'id' is missing in type '{ name: string; }' but required in type 'ApiKey'.Key'.

ApiKeydataType2のタイプはApiKeyであるため、ApiKeyの中和idname必要であり、コンパイルエラーが発生します。のパラメータがオプションの場合ApiKey、この問題は発生しなくなり、役割はここにあります。これは、のすべてのプロパティをオプションにするのにPartial役立ちます。ApiKey

Partialこの栗を書き直すために使用します

interface ApiKey {
    
    
  id: number;
  name: string;
}

const dataType1: ApiKey = {
    
    
  id: 1,
  name: 'static'
}

const dataType2:  Partial<ApiKey> = {
    
    
  name: 'json'
}

このとき、エラーなしで実行されます。

おすすめ

転載: blog.csdn.net/weixin_43853746/article/details/121923864