Angularjs 4 - 需要刷新显示/隐藏指令

时间:2017-06-13 08:56:30

标签: javascript angularjs ngif

当用户未登录时(在公共视图上)我隐藏导航栏时出现问题,我检查localStorage上是否存在currentUser项,然后我使用 * ngIf在html模板上显示/隐藏。

当我首先登录时,我没有看到导航栏,但刷新了它显示的页面后,当我退出时,它首先显示它,刷新页面后它就消失了。

有我的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 个答案:

答案 0 :(得分:1)

试试这个:

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

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