2017-06-13 11 views
0

ユーザーがログインしていないとき(パブリックビュー上)にnavbarを非表示にする問題がありますが、currentUserがlocalStorageに存在し、 *表示/非表示にするHTMLテンプレートのngIf。Angularjs 4 - 表示/非表示の指示をリフレッシュする必要があります

初めてログインすると、navbarが表示されませんが、ページを更新した後、ログアウトすると同じページが表示され、最初に表示され、ページが更新された後に消えてしまいます。

app.component.ts

import { Component, OnInit } from '@angular/core'; 

@Component({ 
    moduleId: module.id, 
    selector: 'app', 
    templateUrl: 'app.component.html' 
}) 

export class AppComponent implements OnInit { 

    userLogged = JSON.parse(localStorage.getItem('currentUser')); 

    ngOnInit() { 
     console.log(this.userLogged); 

    } 

} 

そして、あなたはより多くの情報が必要の場合には、私のapp.component.html

<!-- main app container --> 
<div class="jumbotron"> 
    <div class="container"> 
     <ng-navbar *ngIf="userLogged"></ng-navbar> 
     <div class="col-sm-12"> 
      <alert></alert> 
      <router-outlet></router-outlet> 
     </div> 
    </div> 
</div> 

はちょうど私の最初のAngularjs 4問題であり、私が何をするかわからない、それを求めるがあります正確に表示されます。

答えて

1

はこれを試してみてください:

<ng-navbar *ngIf="userLogged()"></ng-navbar> 

userLogged() { return JSON.parse(localStorage.getItem('currentUser')) }; 
+0

はい、それは動作しますが、あなたに感謝します! :) – Troyer

関連する問題