javascript - 解决错误 NgFor 仅支持绑定到 Arrays
问题描述
我一直收到以下错误,我发现很难解决。有人可以帮我解决这个问题吗?
ERROR Error: Cannot find a differ supporting object '[object Object]' of type 'object'. NgFor only supports binding to Iterables such as Arrays.
JSON 数组
[{
"studentname": "ddd",
"age": 10,
"school": {
"s_name": "abc school",
"school_city": "nsw"
}
}]
<div *ngFor="let stu of this.studentSelected; let i = index;" >
<tr > <td>{{stu.studentname}} :</td>
<ng-container *ngFor="let sof stu .school">
<td>{{s.school_city}}</td>
</ng-container>
</tr>
</div>
我知道错误状态 NgFor 只支持绑定到数组。但是,我不知道如何更正此代码。
解决方案
那么你的问题的直接答案是制作school
一个数组。
在您的代码中,您执行ngFor
的stu.school
不是数组,因此只需修改该行:
studentSelected = [{
"studentname": "ddd",
"age": 10,
"schools": [
{
"s_name": "abc school",
"school_city": "nsw"
}
]
}];
并且您的代码不会显示任何错误:
<div *ngFor="let stu of studentSelected; let i = index;" >
<tr >
<td>{{stu.studentname}} :</td>
<ng-container *ngFor="let s of stu.schools">
<td>{{s.school_city}}</td>
</ng-container>
</tr>
</div>
这是一个工作示例:
https ://stackblitz.com/edit/angular-ivy-ikeuky?file=src/app/app.component.ts
请看一看 :-)
推荐阅读
- node.js - MEAN stack mongoose 用“Z”时区错误保存日期时间
- javascript - 不能要求一个模块
- python - 运行这个 tweepy 脚本时,每个请求有多少个请求和推文?
- java - jboss 6远程jms网桥配置不起作用
- css - CSS - 使用媒体查询从其父元素中删除一个元素
- maven - 在类路径资源中创建名称为“cxf”的 bean 时出错
- javascript - 使用handelbars bar模板显示具有特定标题的所有对象
- html - 在不渲染页面的情况下使用 nodejs 更改 html 中的内容
- bintray - Bintray API 阻塞 HEAD 方法请求
- html - 如何显示带有标签的复选框?我的代码只显示标签为什么?