在Angular中,当你尝试绑定一个不是HTML元素的自定义属性时,会出现"无法绑定属性,因为它不是“div”的已知属性"的错误。
解决方法之一是使用属性绑定来绑定该属性。例如,假设你要绑定一个名为"customAttr"的自定义属性:
在HTML模板中:
在组件中:
yourValue: string = "your value";
这样就可以成功绑定自定义属性"customAttr"了。
另一种解决方法是使用@HostBinding装饰器将自定义属性绑定到组件的宿主元素上。在组件类中使用@HostBinding装饰器将自定义属性绑定到宿主元素上:
import { Component, HostBinding } from '@angular/core';
@Component({
selector: 'app-your-component',
template: '',
})
export class YourComponent {
@HostBinding('attr.customAttr')
yourValue: string = "your value";
}
这样就可以成功将自定义属性"customAttr"绑定到组件的宿主元素上了。
请记住,无论使用哪种解决方法,都需要确保自定义属性的名称与实际要绑定的属性名称一致。