home.ts
import { Component } from '@angular/core';
import { NavController } from 'ionic-angular';
import { CatagoriesProvider } from '../../providers/catagories/catagories';
import { AnimalCategoriesPage } from '../animal-categories/animal-categories';
import { BodyPartsPage } from '../body-parts/body-parts'
@Component({
selector: 'page-home',
templateUrl: 'home.html'
})
export class HomePage {
catagoryList: any;
constructor(public navCtrl: NavController, public catagories:CatagoriesProvider) {
this.catagories.loadAll().then(result => {
this.catagoryList = result;
});
}
openPage() {
this.navCtrl.push(AnimalCategoriesPage);
}
}
provider.ts
import { Injectable } from '@angular/core';
import { Http } from '@angular/http';
import 'rxjs/add/operator/map';
@Injectable()
export class CatagoriesProvider {
data:any;
constructor(public http: Http) {
this.data = [
{catagoryName: 'Animals'},
{catagoryName: 'Body Parts'},
{catagoryName: 'Colors & Shapes'},
{catagoryName: 'Apparels'},
{catagoryName: 'Family'},
{catagoryName: 'Vegitables & Fruits'}
];
}
loadAll() {
return Promise.resolve(this.data);
}
}
home.html
<ion-content padding>
<ion-card *ngFor="let catagory of catagoryList">
<ion-card-header text-center>
{{catagory.catagoryName}}
</ion-card-header>
<ion-card-content text-center>
<button ion-button small outline (click)="openPage(catagory)">Learn</button> <button ion-button small outline>Practice</button>
</ion-card-content>
</ion-card>
</ion-content>