angular - 如何在Angular中循环嵌套数组
问题描述
我有一个这种形式的嵌套数组
tests: [
[{name:"Bob",score:40,subject:"Math"}, {name:"John",score:55,subject:"Math"}],
[{name:"Alice",score:70,subject:"English"},{name:"John",score:68,subject:"English"}]
],
// ...
我想循环并打印,同时将相同的主题分组在一起,如下所示:
<div *ngFor = "let test of tests;let i = index">
<ul *ngFor = "let student of test[i] ;let n = index">
<li>{{student.name+' '+student.score}}</li>
</ul>
</div>
但最终出现错误:
错误错误:找不到
[object Object]
“对象”类型的不同支持对象。NgFor 仅支持绑定到 Iterables,例如 Arrays。
从第二个循环开始。请问我在这里缺少什么?
解决方案
刚刚改成test[i]
是test
一个数组,你可以迭代它,但是test[i]
是和对象,不能迭代。
ts代码:
tests = [
[{name:"Bob",score:40,subject:"Math"},{name:"John",score:55,subject:"Math"}],
[{name:"Alice",score:70,subject:"English"},{name:"John",score:68,subject:"English"}]
]
html:
<div *ngFor = "let test of tests;let i = index">
<ul *ngFor = "let student of test ;let n = index">
<li>{{student.name+' '+student.score}}</li>
</ul>
</div>
推荐阅读
- python - 从日期时间列中提取月份日期以使用 Seaborn 绘制季节性折线图
- mysql - 在mysql中将数字按45分组
- python - 为什么当我在 python 中按下按钮“运行”时它没有给出任何输出?
- unity3d - 自定义着色器不接收光线
- flutter - Flutter web TextField 不显示写在键盘上的文本
- python - 一种能够消除 N 个障碍物的星型算法
- pic - 无法在 MPLABX (PKOB) 上使用 Curiosity HPC,如何让它在当前 IDE 上工作?
- html - 小图标图像添加到 span 类里面
- 标签?
- html - Italic tag not being formatted in Github Pages
- python - 使用 Python 调用 JSON API