当前位置: 首页 > 知识库问答 >
问题:

嵌套*ngFor*和*ngIf[重复]

燕建中
2023-03-14

在下面的代码中,我试图在< code >选项卡下显示所有< code >项目(对象),它们应该基于它们的类别。

类别必须相等。

编辑:如果还不清楚,请看这里。

<md-tab-group>
    <md-tab *ngFor="let tab of tabs">

        <template md-tab-label>
            {{tab.name}}
        </template>

        <h1 *ngFor="let project of projects" *ngIf="tab.category == project.category">
            Project Name: {{project.name}}
        </h1>

    </md-tab>
</md-tab-group>

我正在尝试遍历选项卡并将每个选项卡的名称添加到选项卡的“模板”中。

然后,我尝试遍历项目,如果项目的类别与选项卡的类别匹配,那么它将显示在选项卡下。

出于某种原因,它似乎不起作用。我做错什么了吗?< br >请原谅我和我的逻辑,过去两天一直醒着!

共有1个答案

昌栋
2023-03-14

不支持在一个元素上使用< code>*ngIf和< code>*ngFor(或通常多个结构指令)。

您可以使用helper元素< code >

<ng-container *ngFor="let project of projects">
  <h1 *ngIf="tab.category == project.category">
      Project Name: {{project.name}}
  </h1>
</ng-container>

另请参见导致错误的同一元素上的*ngIf和*ngFor

 类似资料:
  • 我遇到需要 *ngIf 和 *ngFor 指令的情况。我在堆栈上找到了很多答案,但对于这种情况没有答案。 我有一个表格,我在其中循环浏览对象数组并在标题中动态写入单元格: 我想显示/隐藏对象是否包含设置为 true 的可见值。我怎样才能做到这一点?

  • 我试图使用ngFor显示选项列表,但只满足某些条件,是否可以一起使用ngFor和ngIF来实现这一点?

  • 我需要将*ngFor循环绑定到div,但我也需要仅在满足*ngIF条件后显示它。 但是Angular 4不会让你把它们结合起来。 我的代码: 我得到以下错误: 不能在一个元素上有多个模板绑定。只使用一个名为“模板”或以*为前缀的属性 那么你如何着手去做呢?

  • 我想知道我是否有像这样的和的组合。当Angular创建其元素时,什么将首先运行? <代码> 想象一下,我们有一个包含几千个< code >项目的< code >项目列表,并且< code>ngFor首先运行,这种情况会使应用程序完全崩溃。当然,我可以使用一个< code>div来包装它,并将< code>ngIf放在那里,但是了解更多这方面的知识是非常重要的。谢了。

  • 伙计们,你们能帮帮忙吗 所以我正在尝试显示我从后端获得的数据,但似乎 *ngFor 不起作用,只想返回启用的大小如何使用 ngIf 这是模板 这是我得到的数据(我正在循环的部分) 所以我需要显示每个尺寸的价格,然后减去折扣,如果未启用,则显示隐藏该尺寸。

  • 当我在同一个元素上使用和时,我遇到了一个问题。 我知道简单的解决方案是在新元素上移动。例如: 但是当我使用这个解决方案时,我不能使用变量。并且这个解决方案隐藏了