TypeScript 抱怨 HTMLElement 没有 value 属性
Posted
技术标签:
【中文标题】TypeScript 抱怨 HTMLElement 没有 value 属性【英文标题】:TypeScript complains about HTMLElement do not have value property 【发布时间】:2017-05-20 17:07:42 【问题描述】:,但是当我在 javascript 中使用它时,它可以正常工作。
var inputValue: htmlElement = document.getElementById('input1');
console.log(inputValue.value); // show error message
在 JavaScript 中, var inputValue= document.getElementById('input1'); 控制台.log(inputValue.value); // 它给了我输入元素的值
我能知道为什么 TypeScript 会抱怨吗?
【问题讨论】:
【参考方案1】:HTMLElement 没有 value
成员,HTMLInputElement 有。
你需要输入 assert 它:
var inputValue = document.getElementById('input1') as HTMLInputElement;
console.log(inputValue.value); // should be ok
编辑
打字稿定义代表实际的 javascript dom 元素,在本例中为 HTMLElement 和 HTMLInputElement。
【讨论】:
感谢您的回答。为什么是 HTMLInputElement? as 是从哪里来的? JavaScript 还是 TypeScript? 查看修改后的答案以上是关于TypeScript 抱怨 HTMLElement 没有 value 属性的主要内容,如果未能解决你的问题,请参考以下文章
TypeScript——不能将类型“HTMLElement | null”分配给类型“HTMLElement”
TypeScript——不能将类型“HTMLElement | null”分配给类型“HTMLElement”
useRef Typescript 错误:“HTMLElement”类型上不存在属性“当前”
ReactJS / TypeScript-属性'file'在类型'HTMLElement'错误时不存在