javascript - 使用严格类型检查时,“元素”上不存在“样式”
问题描述
我正在使用 Visual Studio Code 对 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"
“元素”类型上不存在属性“样式”
严格来说这个错误是正确的:Element
没有样式属性,所以我不能调整它。
在 Typescript、Java 或 C# 中,可以选择告诉编译器类型:
let btn = buttons[0] as HTMLElement
Javascript中有没有办法将Element
其视为HTMLElement
?
解决方案
试试看:
btn.style("color", "red");
推荐阅读
- java - 使用 Jsoup 从 HTML 页面中提取数据
- spring-cloud-dataflow - Spring cloud dataflow - 具有外部配置的复合任务
- ios - 将数据从视图控制器传递到 MVC 中的视图 - Swift
- android - 当他的购物车为空时,我如何向用户显示消息,我正在使用 RecyclerAdapter 来显示购物车项目
- python - 返回从列表中选择的大小 n 组合的递归函数
- javascript - 在 Vue.js 中,为什么我的计算属性不起作用
- swift - 无法从 firebase 实时数据库中获取/读取数据到 UITableViewController
- typescript - 打字稿:从 {} 扩展
- python - 如何解决“hape 必须是 2 级,但对于 'MatMul_4'(操作:'MatMul')来说是 0 级,输入形状:[],[3]。”
- django - 从 vuejs 和 Django 后端将文件上传到 s3