2017-12-19 7 views
0

角度プロジェクトの中に私は機能があります。私はそれを実行すると、私は家に行くことを期待しています。角度のリダイレクト機能

私の機能の中には、条件があります。本当にリダイレクトしたいのですが。

if (condition) { 
    location.url('/home'); 
    // code... 
} 
+0

を使用することができます。 Angularはすべてのルータ変更を処理する必要があります。 'location.href = ...'を実行することで、ネイティブのjs redirectを使用しています。これにより、アプリは強制的に更新されます。 (ユーザーエクスペリエンスを傷つける) – LLai

答えて

2
constructor(private router: Router) { } 

if (condition) { 
     this.router.navigate(['/home']); 
} 
1

"リダイレクト"とはちょっと混乱しています。最終的な場所を決定する条件がある場合は、どちらか一方のみを使用することができます。あなたは、ウィンドウの履歴に反映真のリダイレクトを意味する場合

if(location) { 
    $location.url('/home'); 
} else { 
    $location.url('/otherDestination'); 
} 

AngularJSが提供する$location.replace機能について読みました。下にスクロールして、 'R​​eplace method'と表示されたセクションに移動します。お役に立てれば!

$location.url('/otherDestination').replace(); 
+0

私は条件があります: 'if(task.id == id){ location.url( '/ home'); //コード... } ' – ValRob

+0

あなたは明確にしていただけますか? task.id!= idの場合にリダイレクトする方法を尋ねていますか? –

+0

はい、条件はとても重要ですか? – ValRob

0

Yyouはいつも私がの角度[ルータ](https://angular.io/tutorial/toh-pt5)ガイドを読むことをお勧めJS

window.location.href = 'xyz'; 
関連する問題