2017-02-22 39 views
1

有沒有類似於Django'下一個動作'的angular2內置的方法,它記住用戶在嘗試執行經過身份驗證的操作時試圖執行的操作?記住未經身份驗證的動作

場景:

  1. 用戶不
  2. 用戶試圖查看用戶X的個人資料
  3. 用戶被重定向到登錄頁面
  4. 用戶登錄
  5. 用戶登錄被重定向到用戶X的個人主頁
+0

您使用的是後衛的重定向過程? –

+0

是的,我正在使用類似於authguard/authservice風格的系統 – IzPrEE

回答

1

在你的Angular2衛士你co ULD做到以下幾點:

canActivate(next: ActivatedRouteSnapshot, state: RouterStateSnapshot) { 
    // Logged in logic. 

    // If not logged in store the state.url 
    localStorage.setItem('redirectUrl', state.url); 

    // Not logged in logic. 
} 

在您的登錄功能,一旦登錄成功,你就可以使用重定向:

if (localStorage.getItem('redirectUrl')) { 
    this.router.navigate([localStorage.getItem('redirectUrl')]); 
} 
+1

謝謝,這工作完美。 – IzPrEE

相關問題