実現したいこと
「暗黙的に'any'型が含まれる」という現象を解決したいです。
コード(1)のisOnに赤い波線が付き、メッセージが表示されます。
コード自体は問題なく実行されます。
(1)を「public activateSecurity({isOn}: {isOn: boolean}): void { }に編集すれば、
エラーは消えてくれますが、同じ箇所で型注釈を2度も記述するのは冗長になってしまいます。
読みやすさを重視したいので、メソッドの定義部分には型注釈を書きたくありません。
他に解決方法はございますでしょうか。
typescript
1 2/** Houseクラス @class */ 3type CtorHouse = { 4 readonly color: string; // @param: 家の色 5 readonly room : number; // @param: 部屋の数 6}; 7 8abstract class absHouse { 9 10 /** セキュリティを作動させるメソッド @method */ 11 abstract activateSecurity({isOn}: {readonly isOn: boolean;}): void; 12 13} // class absDonuts 14 15class House extends absHouse { 16 17 protected color; 18 protected room; 19 20 constructor({color, room}: CtorHouse) { 21 super(); 22 this.color = color; 23 this.room = room; 24 } 25 26 public activateSecurity({isOn}) { // (1) 27 isOn 28 ? console.log(`セキュリティを作動しました`) 29 : console.log(`セキュリティを停止しました`); 30 } 31 32} // class House {} 33 34const house = 35 new House({ 36 color : `黒`, 37 room : 3, 38 }); 39 40 house.activateSecurity({isOn: true}); // セキュリティを作動しました
発生している問題・分からないこと
「実現したいことを教えてください」と同じ。
エラーメッセージ
error
1Visual Studio Codeによる(2)のエラー・メッセージ 2バインド要素 'isOn' には暗黙的に 'any' 型が含まれます。ts(7031) 3(parameter) isOn: any
該当のソースコード
特になし
試したこと・調べたこと
- teratailやGoogle等で検索した
- ソースコードを自分なりに変更した
- 知人に聞いた
- その他
上記の詳細・結果
「実現したいことを教えてください」と同じ。
補足
特になし
回答2件
あなたの回答
tips
プレビュー