Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Erro ao efetuar Logoff

Criei uma função de Logoff porém ocorre o erro abaixo ao setar null ao _usuarioLogado:

TypeError: Cannot read property 'raf' of null

Segue o código adicionado:

app.component.ts

  sair(): void {
     this._usuariosService.efetuaLogout();
     this.nav.setRoot(LoginPage);
  }

app.html (Adicionei apenas o botão sair)

<ion-menu [content]="conteudo" *ngIf="usuarioLogado">
        <ion-content>
            <ion-item id="cabecalho-menu" class="cabecalho-menu">
                <div>
                    <ion-avatar item-start>
                        <img [src]="avatar">
                    </ion-avatar>
                </div>
                <h2>{{ usuarioLogado.nome }}</h2>
                <p>{{ usuarioLogado.email }}</p>
            </ion-item>

            <ion-list>

                <button ion-item menuClose *ngFor="let pagina of paginas"
                    (click)="irParaPagina(pagina.componente)">

                    <ion-icon [name]="pagina.icone" item-left></ion-icon>
                    {{ pagina.titulo }}
                </button>

                    <!--  Botão adicionado: -->
                <button menuClose ion-item (click)="sair()">
                  Sair
                </button>

            </ion-list>
        </ion-content>
    </ion-menu>

usuarios-service.ts

  efetuaLogout() {
      this._usuarioLogado = null;
  }

Como contornar esse problema?

OBS: Criei esse exemplo enxuto para reproduzir o erro: https://stackblitz.com/edit/ionic-offg7d

1 resposta
solução!

Resolvi esse problema removendo o *ngIf e ocultando pelo MenuController.

this.menuController.enable(false);