在我的Angular 2(beta 14)应用程序中,我需要跟踪用户登录状态以隐藏/显示某些元素 .
我得到的问题是属性绑定不像我做的那样工作如下 .
我创建了一个用于存储和更新全局变量的类:
app-global.ts
import {Injectable} from "angular2/core";
@Injectable() export class AppGlobals {
// use this property for property binding
public isUserLoggedIn: boolean = false;
setLoginStatus(isLoggedIn){
this.isUserLoggedIn = isLoggedIn;
}
getLoginStatus(){
return this.isUserLoggedIn;
} }
在登录组件中,我导入了AppGlobals
export class LoginComponent {
constructor(private _appGlobals: AppGlobals) { }
并设置登录状态
this._appGlobals.setLoginStatus(true);
在另一个组件中,我像在LoginComponent中那样注入AppGlobals
我定义了一个类(组件)的属性
isLoggedIn:boolean = this._appGlobals.isUserLoggedIn; //我也尝试使用getter而不是public属性(见上文)
<