在Angular组件中绑定主机元素所需的aria

时间:2017-01-30 14:53:16

标签: angular wai-aria

尝试在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 === '';
}

虽然我不确定这是表现最好的方式。

有更好的方法吗?

1 个答案:

答案 0 :(得分:0)

不完全确定它是否可行,但可能是这样的:

@HostBinding('attr.aria-required')
@Input() 
public required: boolean;

您将不得不使用属性绑定[]

<component [required]="true"></component