我是angularjs的新手,所以这可能很简单。我将此作为我的主要应用入口点:
<div ng-app="mainApp">
<div ng-view></div>
</div>
如此路由:
$routeProvider
.when('/general', { templateUrl: '/Rewards/SelfService_General', controller: 'GeneralController' })
.when('/resources', { templateUrl: '/Rewards/SelfService_Resources', controller: 'ResourcesController' })
.otherwise({ redirectTo: '/general' });
我的资源控制器是这样的:
appRoot.controller('ResourcesController', ['$scope', '$interval', '$http', function ($scope, $interval, $http) {
$scope.GetResources = function GetResources() {
var requestData = {
AccessKey: "",
Culture: ""
};
$http.post('http://myapi.com/etc', requestData)
.success(function (data, status, headers, config) {
$scope.ViewName = status;
alert('success');
})
.error(function (data, status, headers, config) {
$scope.ViewName = status;
alert('error');
});
};
$interval($scope.GetResources(), 5000);
}]);
在加载页面时,立即调用GetResources函数并按预期命中,返回错误函数返回401状态。令我惊讶的是,没有进一步调用GetResources。为什么间隔结束?
答案 0 :(得分:1)
添加此答案以解决此问题。
在您的标记中,属性名称应为ng-click
而不是ngclick
。
答案 1 :(得分:0)
$interval($scope.GetResources(), 5000);
应为$interval($scope.GetResources, 5000);