2016-10-17 8 views
0

私は2つのモデルを持っています:AppModule、PanelModule。私AppComponentで角2:正しいルートにリダイレクト

ユーザーがログインしている場合は、私がチェックして、彼がいる場合は、私がパネルに彼をリダイレクトします。これは私がこれを行う方法です:

ngOnInit() { 
     //If he is alredy logged, redirect him to the panel 
     this.authService.login().subscribe(() => { 
      this.authService.loaded = true; 
     if (this.authService.isLoggedIn) { 
      console.log("Navigating to panel.."); 
     this.router.navigate(['/panel']); 
     } 
    }); 
    } 

私の場所が子ルートであるときに問題が発生します。例えば:ユーザーがログインしているとthis.router.navigate(['/panel']);が実行されるため

/panel/users 

私は直接URLにアクセスしようとしている場合は、私は戻って/panelに移動します。

私のアプリは、正しい道にユーザーをリダイレクトするように、正しいアプローチは何ですか?

答えて

0
あなたはおそらく唯一の最初の結果に加入したい

this.authService.login().first().subscribe(() => { 
関連する問題