2016-08-29 84 views
1

我不想只允許登錄的用戶訪問某個網站。 檢查用戶是否登錄加載的正確方法是什麼?Angularfire2:檢查用戶是否登錄的正確方法?

下面的代碼是我第一次嘗試,不知道它是否工作。 當然,我已經編寫了數據庫規則,現在我想要爲用戶直觀地完成行爲。

this.af.auth.subscribe(auth => { 
    if (auth) { 
     //route to other view 
    } else { 
     //do whatever 
    } 
}); 
+2

您應該使用角度2路由警衛。最重要的是,請留意這個https://github.com/angular/angularfire2/issues/343 –

回答

2

您應該考慮使用角度2警衛,如canActivate。他們可以幫助您在路由發生之前進行驗證。這樣可以防止未經授權的用戶導航。

就像早說的那樣,這種方法是有效的。如果你想對auth信息進行轉換。可能你應該使用observables方法,比如map,flatmap,concatMap。