在tabs.ts中传递navparams然后将它们发送到模态

时间:2017-10-11 17:05:57

标签: angular typescript ionic-framework ionic3

我有问题。我的应用程序有facebook身份验证,我将参数传递给所有标签页,如下所示:

tabs.ts

homeParams={
    facebooknev: this.navParams.get('nev'),
    facebookemail: this.navParams.get('email'),
    facebookprofilkep: this.navParams.get('profilkep')

  }

tabs.html

<ion-tab [root]="tab1Root" tabTitle="Hírek" tabIcon="home" [rootParams]="homeParams"></ion-tab>
  <ion-tab [root]="tab2Root" tabTitle="Tudásbázis" tabIcon="information-circle" [rootParams]="homeParams"></ion-tab>
  <ion-tab [root]="tab3Root" tabTitle="Halszámláló" tabIcon="contacts" [rootParams]="homeParams"></ion-tab>

然而,当我在第二个标签页上时,我正在尝试打开模态页面并将参数发送到该页面(这不是标签页):

  openFeltoltes(){
    const feltolt=this.modal.create(FogasfeltoltesPage,{data:this.homeParams});
    feltolt.present();
  }

很遗憾找不到带有该代码的homeParams

welcome.ts(我从登录处获取facebook参数):

  let facebookadatok={
              nev: res.user.displayName,
              email: res.user.email,
              profilkep: res.user.photoURL
            }
            this.navCtrl.push(TabsPage,facebookadatok);

我可以在任何html页面上显示数据,这些页面是标签页的一部分,但不在单个页面上显示:

{{navParams.data.facebooknev}}

1 个答案:

答案 0 :(得分:0)

您需要按如下所示进行操作:

tabs.ts

openFeltoltes(){
    const feltolt=this.modal.create(FogasfeltoltesPage,{data:this.homeParams});
    feltolt.present();
  }

检索它:

  let facebookadatok= = this.navParams.get('data');