【发布时间】:2019-10-22 18:04:38
【问题描述】:
我正在尝试使用ngFor 循环从我的数组中获取数据。我明白了
"找不到不同的支持对象 '[object Object]' 类型 'object'.NgFor 只支持绑定到数组等Iterables”。
我该如何解决?
我如何获取数据
if (this.resources$) {
this.resources$.subscribe(result => {
if (result) {
this.resourcesList = <Resources[]>result;
this.showResources = true;
}
});
export interface Resources {
Id: number;
Name: string;
}
我正在尝试这样使用它
<div *ngFor="let res of resourcesList">{{res.Name}}</div>
【问题讨论】:
-
语法看起来正确。请检查 resourceslist 变量的内容。设置断点或显示:{{ resourcesList | json}}
-
也许你的 resourcesList 没有设置,因为你从来没有进入包装 if 条件?你能试着记录一下吗?顺便说一句 - 您应该能够使用异步管道直接 DOM 订阅您的资源$ Observable:*ngFor="let res of resources$ | async"。使用它,您不需要任何 .ts 逻辑,只需要可观察的 resources$。
-
检查后端返回的内容,确保它是一个数组,而不是包含数组的对象。
-
result = {Resources: Array(1), ItemCount = 1}
标签: angular