ログインページに取り組んでいます。成功すると、ホームページにリダイレクトされます。デフォルトでは、ログイン ページに次のコードを表示します。
app.run(function($rootScope, $location) {
$rootScope.$on('$routeChangeSuccess', function() {
$location.url("/login");
});
});
次に、バックエンドからユーザー/パスの詳細を検証した後、ユーザーをホームページに移動します。
$scope.login = function() {
if ($scope.username === 'admin' && $scope.password === 'pass') {
console.log('successful')
$rootScope.$on('$routeChangeSuccess', function() {
$location.url("/home")
});
$location.url("/blah");
} else {
$scope.loginError = "Invalid username/password combination";
console.log('Login failed..')
};
};
ステートメントのセクションの$location.url
前の秒を削除すると、リダイレクトが機能しないようです。ただし、その URL ( ) を使用していないため、 に移動します。ただし、urlが削除されると、リダイレクト ロジックは機能しません。else
if
/blah
home
blah
なぜ two を使用する必要があるのか 理解できないようです$location.url()
。このリダイレクト システムがどのように機能するかを誰かが理解するのを手伝ってくれたら幸いです。
これはベスト プラクティスではないかもしれません。これを改善する方法についての提案をお待ちしています。Plunker の例を次に示します。