@randolphrrl wrote:
Hello!
I'm new to Ionic and I'm having trouble querying my API. Console.log information arrives normally, but I can not display the data in home.html. I will send the error code and my query code. Could you help me with this consultation?
Error:
Runtime Error Cannot find a differ supporting object '[object Object]' of type 'object'. NgFor only supports binding to Iterables such as Arrays.Result console.log
Providers:
import { Injectable } from '@angular/core'; import { Http, RequestOptions, Headers } from '@angular/http'; import 'rxjs/add/operator/map'; @Injectable() export class ServerHttpService { data: any; apiUrl = 'http://localhost/api/v1'; constructor(public http: Http) { console.log('Hello ServerHttpService Provider'); } getUsers() { if (this.data) { return Promise.resolve(this.data); } return new Promise(resolve => { let myHeader = new Headers({ "Accept": "application/vnd.api+json", "Content-Type": "application/vnd.api+json", "Authorization": "Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJzdWIiOjIsImV4cCI6MTUwMDMxODE0OH0.O3vHmSW5Crn0b3BlHO7XSUII6IswOgICtKC13a3aO5g" }); let options = new RequestOptions({ headers: myHeader }); this.http.get(this.apiUrl+'/servidores', options) .map(res => res.json()) .subscribe(data => { this.data = data; resolve(this.data); }); }); } }Home.ts:
import { Component } from '@angular/core'; import { NavController, AlertController } from 'ionic-angular'; import { Login } from './../login/login'; import { Info } from './../info/info'; import { ServerHttpService } from './../../providers/server-http-service'; import { LoginServiceProvider } from './../../providers/login-service/login-service'; @Component({ selector: 'page-home', templateUrl: 'home.html' }) export class HomePage { users: any; constructor( public navCtrl: NavController, public alertCtrl: AlertController, public serverHttpService: ServerHttpService, public loginServiceProvider: LoginServiceProvider) { serverHttpService.getUsers().then(data => { console.log(data); this.users = data; }); } }Home.html:
<ion-header> <ion-navbar color="principal"> <ion-title> Dashboard </ion-title> <ion-buttons end> <button ion-button (click)="showConfirm()"> <ion-icon name="exit"></ion-icon> </button> </ion-buttons> </ion-navbar> </ion-header> <ion-content padding> <ion-list *ngFor="let user of users"> <ion-item> <ion-thumbnail item-start> <img src="{{user.logo}}"> </ion-thumbnail> <h2>{{user.nome}}</h2> <p>{{user.ippublico}}</p> </ion-item> </ion-list> </ion-content>
Posts: 1
Participants: 1
