Javascript 角度/离子错误:尝试区分的错误';[对象对象]';。只允许使用数组和iterables
当我希望使用RESTAPI从服务器接收数据并通过模式将其显示在HTML组件中时,会出现此错误。如果在控制台中获取数据,但在HTML视图中没有 错误:尝试区分“[object]”时出错。只允许使用数组和iterables PedidodisponibleService.tsJavascript 角度/离子错误:尝试区分的错误';[对象对象]';。只允许使用数组和iterables,javascript,html,angular,ionic2,ionic3,Javascript,Html,Angular,Ionic2,Ionic3,当我希望使用RESTAPI从服务器接收数据并通过模式将其显示在HTML组件中时,会出现此错误。如果在控制台中获取数据,但在HTML视图中没有 错误:尝试区分“[object]”时出错。只允许使用数组和iterables PedidodisponibleService.ts export class PedidodisponibleService { private url = 'http://www.server.llama-ya.com'; constructor(private
export class PedidodisponibleService {
private url = 'http://www.server.llama-ya.com';
constructor(private http: HttpClient) { }
getPedido(): Observable<Pdisponible[]>{
const path = `${this.url}/PedidoDisponible`;
return this.http.get<Pdisponible[]>(path);
}
}
modalpedido.page.ts
export class ModalpedidoPage implements OnInit {
pedido: any = [];
constructor(
public modalController: ModalController,
private pedidoDisponible: PedidodisponibleService
) { }
ngOnInit() {
this.pedidoDisponible.getPedido().subscribe(
res => {
this.pedido = res as any;
console.log(res);
},
error => console.log(error + "No podemos procesar pedidos")
/*err => console.error(err)*/
);
}
}
modalpedido.page.html
<ion-header>
<ion-toolbar>
</ion-toolbar>
</ion-header>
<ion-content>
<ion-card>
<ion-item lines="none">
<ion-label>
<h1> Incoming Order </h1>
</ion-label>
</ion-item>
<ion-item *ngFor="let pe of pedido">
<ion-label>
<h2> ORDER DESCRIPTION </h2>
<h3> {{pe.Monto}} </h3>
<h3> {{pe.DondeCobrar}} </h3>
<p> {{pe.Distancia}} </p>
<p> {{pe.Tiempo}} </p>
</ion-label>
</ion-item>
</ion-card>
</ion-content>
来料订单
订单描述
{{pe.Monto}}
{{pe.DondeCobrar}}
{{pe.distance}}
{{pe.Tiempo}}
原因是您没有收到数组else和对象。您可能收到了,例如一些类似{data:[1,2,3]}
,
那么getPedido应该是这样的
this.httpClient.get(...).pipe(map(x=>x.data))
您可以看到,我们不返回响应,只返回响应的属性“data”
或者订阅
this.pedidoDisponible.getPedido().subscribe(
(res:any) => {
this.pedido = res.data;
},
请用英语发布,或用西班牙语发布,请使用
this.pedidoDisponible.getPedido().subscribe(
(res:any) => {
this.pedido = res.data;
},