2016-11-03 5 views
0

Я пытаюсь использовать $ таймаут и использовать следующий код в моем контроллере:

 $scope.counter = 0; 
     var updateCounter = function() { 
      $scope.counter++; 
      $timeout(updateCounter, 1000); 
     }; 
      updateCounter(); 

Однако при вызове updateCounter(), я получаю следующее сообщение об ошибке: [https://docs.angularjs.org/error/ $ http/badreq? p0 = function% 20()] [1]

Большое спасибо за любую помощь и ввод. Штеффен

+0

Пожалуйста, проверьте, вы отправили строку типа url в $ http? –

ответ

1

angular 
 
    .module('myApp', []) 
 
    .run(function($rootScope) { 
 
    $rootScope.title = 'myTest Page'; 
 
    }) 
 
    .controller('testController', ['$scope', '$timeout', 
 
    function($scope, $timeout) { 
 

 
     $scope.counter = 0; 
 
     var updateCounter = function() { 
 
     $scope.counter++; 
 
     $timeout(updateCounter, 1000); 
 
     }; 
 
     updateCounter(); 
 
    } 
 
    ])
<!DOCTYPE html> 
 
<html data-ng-app="myApp"> 
 

 
<head> 
 
    <link rel="stylesheet" href="style.css"> 
 
    <script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/angularjs/1.5.8/angular.min.js"></script> 
 
    <script src="script.js"></script> 
 
</head> 
 

 
<body data-ng-controller="testController"> 
 

 
</body> 
 

 
</html>

Ваш код работает хорошо для меня. вы можете забыть ввести $ timeout в свой контроллер.