Я использую код Visual Studio со строгой проверкой типов для Javascript, используя jsconfig.json
jsconfig.json
{
"compilerOptions": {
"checkJs": true
}
}
Теперь, когда я использую document.getElementsByClassName()
, Я не могу установить все свойства, которые мне нужны - потому что функция возвращает Element
, а не HTMLElement
.
main.js
let buttons = document.getElementsByClassName("button")
let btn = buttons[0]
btn.style.color = "red"
Свойство 'style' не существует в типе 'Element'
Строго говоря, эта ошибка верна: Element
не имеет свойства style, поэтому я не могу его настроить.
В Typescript, Java или C # есть возможность сообщить компилятору тип:
let btn = buttons[0] as HTMLElement
Есть ли способ в Javascript трактовать Element
как HTMLElement
?