Angular 9 - 找不到一个不同的支持对象'getData()
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Angular 9 - 找不到一个不同的支持对象'getData()相关的知识,希望对你有一定的参考价值。
我在尝试将我的控件与它的数据绑定时得到这个错误。下面是一些相关的代码.Template.
<tree-control [nodes]="getData"></tree-control>
组件。
public getData(): Observable<Array<any>> {
const assets: any = this.service.get('url', headers);
return assets;
}
到目前为止,我找到的任何东西都没有帮助。知道我的代码有什么问题吗?
我的代码有什么问题吗?
答案
首先,你给一个函数(getData
)至 nodes
财产。I 假设 您想将数据从 getData
以此来代替。
第二,呼吁 this.service.get
是 可能 不被执行。原因是你不 subscribe
到,我认为是一个http调用,返回一个 Observable
.
要解决这个问题,你可以做以下工作。
export class Foo {
nodeData: Observable<any>;
constructor(
private readonly service: YourService,
) {
this.nodeData = this._getData();
}
private _getData() {
return this.service.get(...);
}
}
在你的模板里,你可以 subscribe
和 unsubscribe
通过使用 async
管道。
<tree-control [nodes]="nodeData | async"></tree-control>
为了让这一切顺利进行,我 假设 你的 service.get
方法返回一个Observable。
以上是关于Angular 9 - 找不到一个不同的支持对象'getData()的主要内容,如果未能解决你的问题,请参考以下文章
Angular'找不到'object'类型的不同支持对象'[object Object]'。 NgFor 仅支持绑定到 Iterables,例如 Arrays。
错误:找不到类型为“object - Angular 7”的不同支持对象“[object Object]”[重复]
Angular 4 找不到“object”类型的不同支持对象“[object Object]”。 NgFor 仅支持绑定到 Iterables,例如 Arrays