在Angular 6中,错误TS2339表示在类型'HTMLElement'上不存在属性'value'。
解决此错误的方法是使用类型断言来告诉编译器该属性确实存在。
以下是一个示例代码,演示了如何解决此错误:
// 定义一个元素的引用
let inputElement: HTMLInputElement;
// 在组件的ngOnInit()方法中获取元素的引用
ngOnInit() {
// 使用类型断言来告诉编译器该属性存在
this.inputElement = document.getElementById('myInput') as HTMLInputElement;
}
// 在一个方法中使用元素的值
getValue() {
// 使用value属性
let inputValue = this.inputElement.value;
console.log(inputValue);
}
在上面的代码中,我们首先声明了一个HTMLInputElement类型的变量inputElement。然后,在ngOnInit()方法中,我们使用document.getElementById()来获取具有id 'myInput'的元素,并使用类型断言将其分配给inputElement变量。
之后,在getValue()方法中,我们使用inputElement的value属性来获取输入框的值。
这样,类型'HTMLElement'上不存在属性'value'的错误就得到了解决。