中級 › インデックスシグネチャと矛盾する型のプロパティを宣言するとエラーになる › パターン1
インデックスシグネチャと矛盾する型のプロパティを宣言するとエラーになる
[key: string]: numberのようなインデックスシグネチャを持つinterfaceでは、個別に宣言する具体的なプロパティも、インデックスシグネチャの型と互換性がなければ宣言できません。
1 interface Dict { 2 [key: string]: number; 3 _____________; ^ 4 } 5 console.log("ok");
main.ts(3,3): error TS2411: Property 'name' of type 'string' is not assignable to 'string' index type 'number'.
空欄を埋めてコンパイルを通す
インデックスシグネチャは全プロパティがnumber型であることを要求します。nameをstring型で宣言すると矛盾します。
次の問題