假设我有一个函数:
angular.forEach(myElements, function prepareElements(myEl: HTMLElement, index) {
myEl.dataset.myProperty = "whatever";
})
我遇到的问题是
error TS2094: The property 'myProperty' does not exist on value of type 'DOMStringMap'
我不太明白 interface
在lib.d.ts
interface DOMStringMap {
}
declare var DOMStringMap: {
prototype: DOMStringMap;
new (): DOMStringMap;
}
然后……
interface HTMLElement {
dataset: DOMStringMap;
hidden: boolean;
msGetInputContext(): MSInputMethodContext;
}
是我自己还是有点不清楚?
我试过类型转换它 <DOMStringMap>myEl.dataset.myProperty = "whatever"
, 什么也没做...
最佳答案
DOMStringMap 接口(interface)为空,因为规范尚未最终确定:https://developer.mozilla.org/en/docs/Web/API/DOMStringMap
同时您可以简单地使用:myEl.dataset['myProperty'] = "whatever";
关于html - 如何在 TypeScript 中使用 DOMStringMap?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22569008/