【问题标题】:How to use variables used in *ngFor/*ngIf to fill the html element properties如何使用 *ngFor/*ngIf 中使用的变量来填充 html 元素属性
【发布时间】:2019-08-21 14:50:37
【问题描述】:

我尝试使用 ngIf 中的变量来填充我的 html 元素的 name 属性,但我不能

我尝试使用来自 ngif="x.child" 的 x,但它似乎不起作用

<ng-container *ngFor="let x of tabRes">
    <div *ngIf="x.child" style="display:block" name="x.nom" >
        <ul class="nav justify-content-center">
            <li *ngFor = "let y of x.child" class="nav-item"><a class="nav-link">{{y.nom}}</a></li>
        </ul> 
    </div>
</ng-container>

当我签入时,我的浏览器元素的名称是 x.nom。我想用这个值来字段我的财产

感谢你们的帮助

【问题讨论】:

  • 请先清除逻辑。是否仅当 x.child 不为空时才循环遍历 x.child? x 长什么样子?
  • 我不确定你在这里问什么。您的检查基本上是说 x.child 是否为 true 显示 div。这是你的意图吗?
  • 对不起,伙计们。一些x 没有财产孩子,其他一些拥有它。我只为具有此属性的人创建 div。样式属性设置为在解决问题后尝试隐藏/显示它们。我想要的是使用x"nom" 属性设置div 名称属性。我不知道我是否足够清楚

标签: angular angular2-directives


【解决方案1】:

在表达式中name="x.nom" x.nom 是一个字符串。要被解释为变量,属性应放在方括号内,即[name]="x.nom"

话虽如此,div 没有name 属性。请改用id

【讨论】:

  • 感谢您的帮助。当我尝试您的解决方案时,我得到了下一个错误:Uncaught Error: Template parse errors: Can't bind to 'name' since it isn't a known property of 'div'
  • @claudem,div 没有属性 name。你的意思是id 而不是name
  • @claudem,字段属性是什么意思?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2014-05-14
  • 1970-01-01
  • 1970-01-01
  • 2019-10-01
  • 1970-01-01
  • 2017-11-14
  • 1970-01-01
相关资源
最近更新 更多