TypeScript抱怨HTMLElement没有value属性但是当我在JavaScript中使用它时它工作正常。
var inputValue: HTMLElement = document.getElementById('input1');
console.log(inputValue.value); // show error message
在JavaScript中 var inputValue = document.getElementById('input1'); 的console.log(inputValue.value); //它给了我输入元素的值
我能知道为什么TypeScript会抱怨吗?
答案 0 :(得分:5)
HTMLElement没有value
会员,HTMLInputElement会这样做。
你需要键入断言:
var inputValue = document.getElementById('input1') as HTMLInputElement;
console.log(inputValue.value); // should be ok
打字稿定义代表实际的javascript dom元素,在本例中为HTMLElement和HTMLInputElement。