ナビゲーションバーの右側にブートストラップnavbarがあります。ログイン、ログアウト、登録のようなリンクがあります 私はapp.component.html .TS私はそのトークンを取得するために私のAuthen.Service.ts呼び出しlogin.component.tsでangle2のシナリオでルーティング後にナビゲーションバーを更新する方法
<div class="navbar-collapse collapse">
// Here i check if user is authenticated, display : Hello [email protected]
<ul *ngIf="user" class="nav navbar-nav navbar-right">
//code in here
</ul>
// If user is not authenticated, display Login - Register
<ul *ngIf="!user" class="nav navbar-nav navbar-right">
<li><a routerLink="/register" id="registerLink">Register</a></li>
<li><a routerLink="/login" id="loginLink">Log in</a></li>
</ul>
はここでのlocalStorage
import { UrlConstants } from './core/common/url.constants';
import { LoggedInUser } from './core/domain/loggedin.user';
import { SystemConstants } from './core/common/system.constants';
@Component({
selector: 'app-login',
changeDetection: ChangeDetectionStrategy.OnPush,
templateUrl: './login.component.html',
styleUrls: ['./login.component.css']
})
export class LoginComponent implements OnInit {
public user: any;
private isLoggedIn = false;
loginUser(valid: boolean) {
this.loading = true;
if (valid) {
const userData = {
username: this.form.controls.username.value,
password: this.form.controls.password.value
}
this._authenService.login(userData.username, userData.password).subscribe(data => {
this.user = JSON.parse(localStorage.getItem(SystemConstants.CURRENT_USER));
// If success redirect to Home view
this._router.navigate([UrlConstants.HOME]);
}, error => {
this.loading = false;
});
}
}
ngOnInit() {
}
}
のお店ですが、私のAuthen.Service.ts
ですここは、私が得た問題は、私は右の状態の変化にナビゲーションバーを更新カントである私のapp.component.ts
export class AppComponent implements OnInit {
// the user object got from localStore
ngOnInit() {
this.user = JSON.parse(localStorage.getItem(SystemConstants.CURRENT_USER));
console.log(this.user);
}
}
である(それはまだ動作し、私はトークンを持っているが、私は、全体をリフレッシュする必要がありますナビゲーションバーを更新するにはどうすればいいですか?
どのようにしてナビゲーションバーを角度で更新できますか?おかげ
考えるとhtmlコードは 'login.componである... plunker はそれが役に立てば幸いですent.html'? –
いいえ、それはapp.component.htmlにあります。私もlogin.component.htmlを持っています。別のモジュールで、ログインが成功すればapp.component.htmlのホームページに移動し、navbarをHelloのように変更します、abc @ com – mkzpizza
あなたはアプリコンポーネントにユーザー価値を提供していますか? app.componentのコードを添付できますか? –