ngClass正在删除加载时的选择选项

时间:2018-07-01 20:00:42

标签: angular

使用Angular,我创建了一个表,其中每个单元格都有一个带选项1、2、3和4的下拉列表。每行所选选项的总和应等于10。我为每个行添加了ngClass与:

<tr [ngClass]="{'error': rowResults[0] != 10}">
  ...
</tr>

但是,添加此ngClass已从加载的每个下拉列表中删除了显示的选项。

我该如何解决?

我创建了一个StackBlitz for this issue

2 个答案:

答案 0 :(得分:0)

您没有声明数组 rowResults ,因此应在SurveyComponent的顶部声明它。

同样,您得到的错误是:

  

错误TypeError:无法读取未定义的属性“ 0”

因此,它尝试读取尚未定义的属性rowResults的第一个元素,因为您在 continue()方法中定义了此数组。

您应分配 rowResults 的初始值以使其起作用:

export class SurveyComponent implements OnInit { rowResults = []; .... }

此外,您还有很多重复的代码,例如选择选项或表中的行,因此我建议使用角度指令*ngFor

答案 1 :(得分:0)

您对原因和实际输出有误。选项不会未隐藏,也不会被删除,但它们根本不会未渲染,因为渲染阶段存在异常(缺少字段声明)。渲染在某个时候停止。因此,您看到的只是部分呈现的标记,因此缺少选项。

https://stackblitz.com/edit/angular-djtsmb