我只是尝试一个简单的超时服务,仍然无法弄清楚缺少什么: -
$timeout($scope.checkLogin("s" , "s"), 4000);
这是功能: -
$scope.checkLogin = function(user, role) {
console.log("user: " + user);
if (user == "-99") {
$scope.errorMessage = "Wrong user/password";
$rootScope.notLogin = false;
} else {
$rootScope.username = user;
$rootScope.userrole = role;
$scope.errorMessage = "";
$rootScope.notLogin = true;
$location.path("/home");
}
};
这是我的控制器标题: -
App.controller('loginController', function($scope, $http, $location,
$rootScope, $window, $timeout, loginService)
它立即被召唤,有人可以帮忙吗?
答案 0 :(得分:2)
$timeout
接受回调函数。 $scope.checkLogin("s" , "s")
的评估无法在以下方式延迟:
$timeout($scope.checkLogin("s" , "s"), 4000);
应该是:
$timeout(function() { $scope.checkLogin("s" , "s"); }, 4000);