因此,我将使用querySelectorAll获取与选择器匹配的元素列表,该元素将它们存储在NodeList中。

然后,我使用forEach循环扫描NodeList,此时每个单个项的类型为“元素”。

但是,我将这些personalItems馈入到函数“ doThing()”中,该函数希望dividualItem类型为“ HTMLElement”(我正在使用打字稿)。我想知道是否有一些内置的js函数将“ Element”类型转换为“ HTMLElement”类型,或者如果没有,那么类似的函数可能看起来像



const h = document.querySelectorAll(someClassString);

h.forEach(individualItem => {
            individualItem.addEventListener(c.EVENT, () => doThing(individualItem));
})    

最佳答案

由于您使用的是TypeScript,为什么不将其转换为其他类型?看到here

const h = document.querySelectorAll(someClassString);

h.forEach(individualItem => {
    individualItem.addEventListener(c.EVENT, () => doThing(individualItem as HTMLElement));
});

关于javascript - 在javascript/typescript中将Element转换为HTMLElement,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/60196453/

10-12 02:44