无法绑定到“ aria-valuenow”,因为它不是“ div”的已知属性


91

以下代码有什么问题?当我尝试为元素分配表达式时,

<div class="progress-bar progress-bar-striped active" role="progressbar"
  aria-valuenow="{{MY_PREC}}" aria-valuemin="0" aria-valuemax="100" >
    {{MY_PREC}}
  </div>

也尝试过

[aria-valuenow]={{MY_PREC}}

自RC5以来似乎发生了

有任何想法吗?

Answers:


202

默认情况下,Angular2绑定是属性绑定。如果没有应用的指令或组件具有这样的aria-valuenow特性,div则没有任何属性。@Input()

改用显式属性绑定

attr.aria-valuenow="{{MY_PREC}}" 

要么

[attr.aria-valuenow]="MY_PREC" 

谢谢!如果我需要执行以下操作怎么办:style="width:{{current_data/current_max_data | percent:'1.0-1'}}"
TheUnreal

7
[ngStyle] = “{宽度:current_data / current_max_data |百分比: '1.0-1'}”
君特Zöchbauer

2
对我来说工作`[style.width] =“ current_data / current_max_data | percent:'1.0-1'”`
alexopoulos7

1
您的帖子为我节省了一天的时间。我正在使用bootstrap 4手风琴<div id="accordion" role="tablist" aria-multiselectable="true">。我需要将我的ID放在标签上的aria控件中以及div aria-labeledby中。对于a[attr.aria-controls]="'collapse'+psl.Id"和div[attr.aria-labelledby]="'heading'+psl.Id"为我工作。
学习中...

抱歉,这个答案对我来说不是很清楚,我们需要打个@Input电话吗?

0

您是否实现了新的ngModule东西?

如果是这样,则声明的顺序会影响应用程序的工作方式。也许您应该尝试以另一种顺序声明指令


0

在.ts文件中:

public MY_PREC = '55';

在.html文件中:

<div class="progress-bar progress-bar-striped active" role="progressbar"
     [attr.aria-valuenow]="MY_PREC" [style.width]="MY_PREC+'%'" aria-valuemin="0" aria-valuemax="100" >
     {{MY_PREC}}
</div>
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.