今回はキャストが必要なビルドエラーについて解説します。
property 'value' does not exist on type 'Element'
idなどへアクセスしようとした時にビルドエラーになるパターン例えばdocument.activeElementなどはElement型で帰ってくるのでキャストが必要です
// NG
var activeElementId = (document.activeElement).id;
// OK
var activeElementId = (<HTMLElement>document.activeElement).id;
idの他hiddenやtabIndex,styleなどはHTMLElementみたいですね。property 'value' does not exist on type 'HTMLElement'
textareaエリアなど入力フィールドでビルドエラーになるパターン。HTMLInputElementへキャストする必要があります。
// NG
var text = document.getElementById("textarea").value;
// OK
var text = <HTMLInputElement>document.getElementById("textarea").value;
valueの他checkedやwidth,height等があるようです。いじょ
何か見つけたらまた書きます。