下面是我的代码,我想要做的是订阅触发send函数后返回的数据。订阅后,我将我的API的数据返回分配给this.Data,以传递给我的ngFor以显示我的数据。但我收到错误Error trying to diff '[object Object]'
。难道我没有到达数据中的显示属性或者没有接受正确格式(对象)的数据吗?
Data: DataLink[] = [];
Send(){
this.http.forward(this.info)
.subscribe( data => {
this.Data = data;
console.log(data);
}) }
<div *ngFor="let msg of Data">
{{msg.display}}
**response**
data: Array
0: Object
display: "How are you?"
答案 0 :(得分:2)
直接在键上循环。你应该没事的
Send(){
this.http.forward(this.info)
.subscribe( data => {
Object.keys(data).forEach(key => {
this.Data = data[key];
console.log(data);
}) }
<div *ngFor="let msg of Data">
{{msg.display}}
</div>
答案 1 :(得分:0)
您看到的错误是因为data
是一个对象而ngFor
需要一个数组。
看一下这个答案:Error trying to diff '[object Object]'
此外,请参阅此角色http
服务doc / examples https://angular.io/docs/ts/latest/guide/server-communication.html