2017-06-02 4 views
1

angularJS関数から警告メッセージをポップアップしたいが、機能していない。angle関数内でwindow.alertが機能しない

スクリプト

app.controller("APIController", function ($scope, $http) { 
$scope.saveSubs = function() { 
    var sub = { 
     UserName: $scope.username, 
     Password: $scope.password 
    }; 
    if ($scope.username === 'admin' && $scope.password === 'admin') { 
     window.location.href = '/Home/HotelSearchRedirect'; 
    } else { 
     $window.alert("User name or password wrong. please enter correct username or password."); 
    } 
};}); 

このコードの何が問題になっているのですか?

+0

「$ window」の代わりに「window」を使用する – user688

答えて

4

windowを使用する必要があります。

app.controller("APIController", function ($scope, $http,$window) { 
$scope.saveSubs = function() { 
    var sub = { 
     UserName: $scope.username, 
     Password: $scope.password 
    }; 
    if ($scope.username === 'admin' && $scope.password === 'admin') { 
     window.location.href = '/Home/HotelSearchRedirect'; 
    } else { 
     $window.alert("User name or password wrong. please enter correct username or password."); 
    } 
};}); 

このコードを置き換えてください。これがあなたを助けることを願っています。

+0

ありがとうございます。それは今働いている。 – sanjeewa

+0

うわー!なぜNarendraの解決策は公式文書にはないのですか? –

1

あなたを注入する必要が$window代わり$window

window.alert("User name or password wrong. please enter correct username or password."); 
+0

AngularJSのドキュメントから:「AngularJSでは、常に$ windowサービスを参照しているため、テストのためにオーバーライド、削除、または模擬することができます。ありがとうございます。https://docs.angularjs.org/api/ng/service/$window – Olezt

1

注入$window

app.controller("APIController", function ($window, $scope, $http) { 
    // Code 
}); 
1

アラート(「ユーザー名またはパスワードが間違っています。正しいユーザー名またはパスワードを入力してください」)だけで十分です。

ウィンドウまたは$ windowは必要ありません。

関連する問題