角2を使用して、認証を処理するAuthServiceがあります。ユーザーがログイン/ログアウトしたときに他のコンポーネントに通知する最善の方法を理解しようとしていますが、このシナリオを処理する正しい方法が不明です。助言がありますか?ありがとう!通知サービスの角2の変更コンポーネント
2
A
答えて
3
最も良い方法は、BehaviorSubjectです。あなたのコンポーネントで
class AuthService {
private _isLoggedIn:Subject<boolean> = new BehaviorSubject<boolean>(false);
getUser() {
return !!localStorage.getItem('user');
};
isLoggedIn() {
this.getUser() && this._isLoggedIn.next(true);
!this.getUser() && this._isLoggedIn.next(false);
return this._isLoggedIn.asObservable();
}
}
//
class NavComponent {
constructor(private AuthService: AuthService) {
this.AuthService.isLoggedIn().subscribe(status => this.isLoggedIn = status);
}
}
関連する問題
- 1. Appleプッシュ通知サービス(APNS)SIMの変更
- 2. EmberJS 2でルート変更を通知するコンポーネント
- 3. 角型2コンポーネント間通信
- 4. 角2 - サービスのコンポーネント変数がビューで変更されていません
- 5. 角2:サービス変数とビューの更新
- 6. サービスからの角度2 - 更新コンポーネントのMVC?
- 7. Angular 2のデータ更新に関する子コンポーネントへの通知
- 8. は通知値の変更についてのコンポーネント
- 9. 角度2のサービス変数
- 10. 角2:コンポーネントが観測するサービスに配列を変更する方法は?
- 11. 角度2のサービス更新UIの変更
- 12. フィールドが変更された後の表示通知(角とノード)
- 13. オリエンテーションの変更と通知
- 14. 通知のレイアウトを変更
- 15. Silverlight UIElementCollectionの変更通知?
- 16. スラックユーザー名変更の通知
- 17. ローカル通知テキストの変更
- 18. コンパクトエディションのSqlDependency(変更通知)?
- 19. Apple通知デバイストークンの変更
- 20. 角度2 - 生のJSをコンポーネントのモデルに変更する
- 21. couchdb変更通知
- 22. IBindingList変更通知
- 23. 角2 - サービスのサービス
- 24. 角2のコンポーネント内部コンポーネント
- 25. Androidの通知サービス
- 26. JSONの通知サービス
- 27. 子コンポーネントから角2のディレクティブ属性を変更します
- 28. 角2のページのタイトルからサービスへの変更
- 29. 角2コンポーネント変数の提供
- 30. Androidプッシュ通知コンポーネント
は、観察や約束を返すメソッドを持っていますか? – toskv