I am beginner in Ionic hybrid development.I want to parse data in List in my project. I am using this webservice:http://api.geonames.org/earthquakesJSON?north=44.1&south=-9.9&east=-22.4&west=55.2&username=bertt. I want to show all dates in List.This is json Responce
{
"earthquakes": [
{
"datetime": "2011-03-11 04:46:23",
"depth": 24.4,
"lng": 142.369,
"src": "us",
"eqid": "c0001xgp",
"magnitude": 8.8,
"lat": 38.322
},
{
"datetime": "2012-04-11 06:38:37",
"depth": 22.9,
"lng": 93.0632,
"src": "us",
"eqid": "c000905e",
"magnitude": 8.6,
"lat": 2.311
},
{
"datetime": "2007-09-12 09:10:26",
"depth": 30,
"lng": 101.3815,
"src": "us",
"eqid": "2007hear",
"magnitude": 8.4,
"lat": -4.5172
}]}
Please suggest the tutorial or post some code its really help me. Thanks in advance
First, you need data provider earthquakes-provider.ts
import { Injectable } from '@angular/core';
import { Http } from '@angular/http';
import 'rxjs/add/operator/map';
@Injectable()
export class EarthquakesProvider {
constructor(public _http: Http) {
console.log('Hello Earthquakes Provider');
}
loadEarthquakes(){
return this._http.get('http://api.geonames.org/earthquakesJSON?north=44.1&south=-9.9&east=-22.4&west=55.2&username=bertt')
.map(res => res.json());
}
}
Second, you need page that will display your JSON data for example in home.ts
import { Component } from '@angular/core';
import { NavController } from 'ionic-angular';
import { EarthquakesProvider } from '../../providers/earthquakes-provider';
@Component({
selector: 'page-home',
templateUrl: 'home.html',
providers: [EarthquakesProvider]
})
export class HomePage {
public DateList: Array<Object>;
constructor(public _navCtrl: NavController,
public _earthquakes: EarthquakesProvider ) {
this.getEarthquakes();
}
getEarthquakes(){
this._earthquakes.loadEarthquakes().subscribe(res => {
this.DateList = res.earthquakes;
console.log(res.earthquakes);
});
}
}
And finally home.html
<ion-header>
<ion-navbar>
<button ion-button menuToggle>
<ion-icon name="menu"></ion-icon>
</button>
<ion-title>Show dates in List</ion-title>
</ion-navbar>
</ion-header>
<ion-content class="content-background">
<ion-list>
<button ion-item *ngFor="let item of DateList">
{{ item.datetime }}
</button>
</ion-list>
</ion-content>
P.S. You can use MomentJS to parse, validate, manipulate, and display dates and times