0
我在角2的應用程序有一個AuthService它提供下列公共方法:angular2-jwt在Promise/Observable中使用tokenNotExpired()?
public isAuthenticated(): boolean {
/* check if id_token is expired or not */
return tokenNotExpired();
}
在模板我可以檢查用戶是否有
<button [routerLink]="['/signup']"
*ngIf="!auth.isAuthenticated()">
Sign Up
</button>
我的問題是,如果用戶通過驗證簽出這項工作很好。如果用戶導航路由「/註冊」並登錄auth0.client.login()
運行並簽署用戶。模板注意到角度變化檢測導致的變化?! 到目前爲止工作正常。
但是,如果使用的功能isAuthenticated()
內AuthService的另一種方法被稱爲在某些組件:
此功能不知道改變「符號」的。或者換另一種方式需要更新,因爲isAuthenticated現在改變爲在簽收前返回true
而不是false
。
在我需要「觀察」的isAuthenticated()
狀態,然後再次運行isAuthorized()
如果它改變了組件。我怎麼能得到這個工作?
一個例子會很棒,因爲我試圖讓這個工作幾個小時。
我沒有得到這個 –
使用布爾數據類型做一個變量並檢查該函數。意思是,檢查類型是否爲真或假。您在此處使用該函數作爲布爾值。而不是函數使用變量。內部函數通過檢查 –
返回變量值我應該在哪裏創建布爾變量並檢查哪個函數?你的意思是像'let isAuthenticated:boolean = tokenNotExpired()'?在哪個函數裏面? –