Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Parse JSON with Ionic 2 and typescript

I'm trying to parse some JSON data from randomuser.me api, to do that a found some tutorials online but aparrently something have change recently in Ionic 2, because none of them are working.

Here is what i have:

import {Component} from '@angular/core';
import {NavController} from 'ionic-angular';
import {Http} from '@angular/http';


@Component({
  templateUrl: 'build/pages/home/home.html'
})
export class HomePage {
  items : any;
  //http://api.randomuser.me/?results=10

  constructor(private navController: NavController, private http: Http) {

    this.http.get("http://api.randomuser.me/?results=10").subscribe(data => {
        console.log("Got data");
        this.items=JSON.parse(data._body).results; // this is the error
        console.log(this.items);
    });
  }

  itemClicked(event, item) {
    console.log(item.title);
    //console.log(event);
  }


}

In the terminal i can see the error: data._body - Property '_body' is private and only accessible within class 'Response'.

What can i do?

like image 752
André Oliveira Avatar asked Jul 07 '16 21:07

André Oliveira


1 Answers

data._body for data.text(),

Instead of data.text() then parsing it you should use data.json()

this.items = data.json();

https://angular.io/docs/ts/latest/guide/server-communication.html#!#extract-data

like image 196
basarat Avatar answered Oct 14 '22 07:10

basarat