使用Angular,我创建了一个表,其中每个单元格都有一个带选项1、2、3和4的下拉列表。每行所选选项的总和应等于10。我为每个行添加了ngClass
与:
<tr [ngClass]="{'error': rowResults[0] != 10}">
...
</tr>
但是,添加此ngClass
已从加载的每个下拉列表中删除了显示的选项。
我该如何解决?
我创建了一个StackBlitz for this issue。
答案 0 :(得分:0)
您没有声明数组 rowResults ,因此应在SurveyComponent的顶部声明它。
同样,您得到的错误是:
错误TypeError:无法读取未定义的属性“ 0”
因此,它尝试读取尚未定义的属性rowResults
的第一个元素,因为您在 continue()方法中定义了此数组。
您应分配 rowResults 的初始值以使其起作用:
export class SurveyComponent implements OnInit {
rowResults = [];
....
}
此外,您还有很多重复的代码,例如选择选项或表中的行,因此我建议使用角度指令*ngFor
答案 1 :(得分:0)
您对原因和实际输出有误。选项不会未隐藏,也不会被删除,但它们根本不会未渲染,因为渲染阶段存在异常(缺少字段声明)。渲染在某个时候停止。因此,您看到的只是部分呈现的标记,因此缺少选项。