我一直在使用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版本中的“新内容”注释,从1.4到1.6,但在此问题上无话可说。
答案 0 :(得分:5)
HTMLElement
接口不包含disabled
属性,因为它不是对所有HTML元素都有意义的属性。但是,它的孩子HTMLInputElement
,HTMLButtonElement
等等,因为disabled
属性对他们有意义。
考虑到这一点,您应该能够轻松纠正您的代码。
答案 1 :(得分:4)
与MDN topics相对应,班级HTMLElement
没有disabled
等属性。这就是Typescript开发团队纠正这个Web API对象的原因