App.html中的“菜单”不适用于Firebase Ionic 3

时间:2018-12-15 18:37:14

标签: angular firebase ionic-framework

我在app.html中声明了html菜单,如下所示:

<ion-menu [content]="content" *ngIf="userData">
    <ion-header>
        <div class="menu heading">
            <ion-list>
                <ion-item menuClose (click)="profilePage()">
                    <ion-avatar item-start>
                        <img [src]="userData.img">
                    </ion-avatar>
                    <h2 class="text-white text-shadow"><strong>{{userData.name}}</strong></h2>
                    <p class="text-white text-shadow" (click)="profilePage()">View Profile</p>
                </ion-item>
            </ion-list>
        </div>
    </ion-header>

    <ion-content class="menu" padding>
        <ion-list>
...
...
...
    </ion-content>
</ion-menu>
<ion-nav [root]="rootPage" #content swipeBackEnabled="false"></ion-nav>

问题在于变量userData来自 firebase ,因此,当我登录并转到首页时,它不起作用,但是一旦刷新页面,它便起作用了。

这就是我在 app.component.ts 中获得userdata的方式:

  constructor(public platform: Platform, public statusBar: StatusBar, 
    public splashScreen: SplashScreen,
    keyboard: Keyboard,
    public angularDb:AngularFireDatabase,
    public dataProvider: DataProvider
  ) {
    platform.ready().then(() => {
      console.log("ready")

      this.dataProvider.getData('userData').then((data)=>{

        let userData = <any>data;
        this.userData = userData;
....

在IONIC 4中,我看到可以在单独的页面(如menu.page.html及其menu.ts)中创建菜单,可以在其中提取UserData,因为app.component.ts仅执行一次, 3建议不幸的是在那里实现菜单,实际上没有解决方案,有什么建议吗?

0 个答案:

没有答案