打字稿HTMLElement禁用1.4到1.6发生了什么(TS2339)?

msz*_*ger 4 typescript visual-studio-2015

我一直在使用Visual Studio 2013和1.4版本的TS语言开发TypeScript项目.刚才我升级了使用TS 1.6的Visual Studio 2015.

我有使用HTMLElement的"disabled"属性的代码:var e:HTMLElement = ... e.disabled = true;

VS 2015/TS 1.6现在给出错误代码TS2339:"HTMLElement"类型中不存在"禁用属性".

哇!'disabled'是一个DOM属性,它曾经在我的代码中执行某些操作,现在它已不再定义了?它去了哪里,我该如何处理?

我已经仔细阅读了TS版本中的"What's New"注释,从1.4到1.6,但在此问题上无话可说.

Ole*_*uka 5

对应于MDN 主题,classHTMLElement没有disabled. 这就是 Typescript 开发团队更正这个 Web API 对象的原因


mes*_*azs 5

HTMLElement接口不包含该disabled属性,因为它不是对所有HTML元素都有意义的属性.然而,这是孩子们HTMLInputElement,HTMLButtonElement等呢,因为disabled房地产是有道理的他们.

考虑到这一点,您应该能够轻松纠正您的代码.