added personal stream
This commit is contained in:
parent
1c47be7675
commit
0a5c0fbab5
3 changed files with 34 additions and 9 deletions
|
@ -19,15 +19,16 @@ export class MyApp {
|
|||
|
||||
rootPage: any = LoginPage;
|
||||
|
||||
pages: Array<{title: string, component: any}>;
|
||||
pages: Array<{title: string, component: any, params: Object}>;
|
||||
|
||||
constructor(public platform: Platform, public statusBar: StatusBar, public splashScreen: SplashScreen, private storage: Storage) {
|
||||
this.initializeApp();
|
||||
|
||||
// used for an example of ngFor and navigation
|
||||
this.pages = [
|
||||
{ title: 'Global Stream', component: StreamPage },
|
||||
{ title: 'List', component: ListPage },
|
||||
{ title: 'Global Stream', component: StreamPage, params: {stream: 'global'} },
|
||||
{ title: 'Personal Stream', component: StreamPage, params: {stream: 'personal'} },
|
||||
{ title: 'List', component: ListPage , params: {}},
|
||||
];
|
||||
|
||||
}
|
||||
|
@ -37,7 +38,7 @@ export class MyApp {
|
|||
this.storage.get('token').then((val) => {
|
||||
if (val.length > 1) {
|
||||
pnut.token = val;
|
||||
this.nav.setRoot(StreamPage);
|
||||
this.nav.setRoot(StreamPage, {stream: 'global'});
|
||||
}
|
||||
}).catch(err => {
|
||||
console.log('ERROR: ' + err);
|
||||
|
@ -54,7 +55,7 @@ export class MyApp {
|
|||
openPage(page) {
|
||||
// Reset the content nav to have just this page
|
||||
// we wouldn't want the back button to show in this scenario
|
||||
this.nav.setRoot(page.component);
|
||||
this.nav.setRoot(page.component, page.params);
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -7,7 +7,10 @@
|
|||
<ion-header>
|
||||
|
||||
<ion-navbar>
|
||||
<ion-title>stream</ion-title>
|
||||
<button ion-button menuToggle>
|
||||
<ion-icon name="menu"></ion-icon>
|
||||
</button>
|
||||
<ion-title>{{title}}</ion-title>
|
||||
</ion-navbar>
|
||||
|
||||
</ion-header>
|
||||
|
@ -20,8 +23,8 @@
|
|||
<ion-avatar item-start>
|
||||
<img src="{{post.user.content.avatar_image.link}}">
|
||||
</ion-avatar>
|
||||
<h2>{{post.user.username}}</h2>
|
||||
<p>{{post.content.text}}</p>
|
||||
<h2>{{ post.user.username }}</h2>
|
||||
<p>{{ post.is_deleted ? '{post deleted}' : post.content.text }}</p>
|
||||
</ion-item>
|
||||
</ion-list>
|
||||
|
||||
|
|
|
@ -16,10 +16,21 @@ import * as pnut from 'pnut-butter';
|
|||
})
|
||||
export class StreamPage {
|
||||
|
||||
title: string;
|
||||
posts: Array<Object> = []
|
||||
|
||||
constructor(public navCtrl: NavController, public navParams: NavParams) {
|
||||
this.fetchGlobal();
|
||||
// console.log(JSON.stringify(navParams));
|
||||
switch (navParams.data.stream) {
|
||||
case 'global':
|
||||
this.title = 'Global';
|
||||
this.fetchGlobal();
|
||||
break;
|
||||
case 'personal':
|
||||
this.title = 'Home';
|
||||
this.fetchPersonal();
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
fetchGlobal() {
|
||||
|
@ -27,6 +38,16 @@ export class StreamPage {
|
|||
pnut.global().then(res => {
|
||||
// console.log(res);
|
||||
this.posts = res.data;
|
||||
// console.log(this.posts);
|
||||
}).catch(err => {
|
||||
console.log(err);
|
||||
});
|
||||
}
|
||||
|
||||
fetchPersonal() {
|
||||
console.log('-- fetching personal stream --');
|
||||
pnut.personal().then(res => {
|
||||
this.posts = res.data;
|
||||
}).catch(err => {
|
||||
console.log(err);
|
||||
});
|
||||
|
|
Reference in a new issue