尝试在Angular中的自定义选择UI组件中实现ARIA属性。我想知道,必需属性的存在/值(可能在页面生命周期内动态设置)如何绑定到主机元素上的aria-required属性(如here所示)。
据我所知@HostBinding,没有这样的语法可以将一个属性绑定到另一个属性,除非使用getter
@HostBinding('attr.aria-required')
private get isRequired(){
const reqAttr = this.elRef.nativeElement.getAttribute('required');
return reqAttr === 'required' || reqAttr === 'true' || reqAttr === '';
}
虽然我不确定这是表现最好的方式。
有更好的方法吗?
答案 0 :(得分:0)
不完全确定它是否可行,但可能是这样的:
@HostBinding('attr.aria-required')
@Input()
public required: boolean;
您将不得不使用属性绑定[]
:
<component [required]="true"></component