jes*_*x1 19 javascript typescript angular
问题与此相同:
TypeScript:类型“EventTarget & Element”上不存在属性“checked”。为什么它不存在?
但仅限于不同的框架。
我需要 ANGULAR 2+ 的这个答案。目前我正在使用 Angular 9
public CheckBoxChange(event: Event) {
this.service.change(this.d!.id.toString(), event.target.checked).subscribe(res => {
console.log(res
}, err => {
console.log(err)
})
}
Run Code Online (Sandbox Code Playgroud)
问题出在这里event.target.checked
错误信息:
类型“EventTarget”上不存在属性“checked”。ts(2339)
如何解决这个问题?好的,我可以设置 type:any 但这不是解决方案。
der*_*her 28
Event是一个相当通用的类, 也是EventTarget。在您访问的位置,event.targetTS 编译器无法推断出这event.target确实是一个复选框,因此它假定它是一个通用的HTMLElement. 如果您想访问复选框(即 a )的属性HTMLInputElement,您必须自己指定类型。
public CheckBoxChange(event: Event) {
const ischecked = (<HTMLInputElement>event.target).checked
this.service.change(this.d!.id.toString(), ischecked).subscribe(res => {
console.log(res
}, err => {
console.log(err)
})
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
18451 次 |
| 最近记录: |