2015-08-18 2 views
0

Я пытаюсь показать сообщения моего вывода json в моем представлении, но я получаю сообщение об ошибке.

Error: [$rootScope:infdig] 10 $digest() iterations reached. Aborting! Watchers fired in the last 5 iterations: []

Я сделал некоторые исследования, и это выглядит как я зацикливание цикл, который вызывает Угловое к «аварии», прежде чем мой браузер делает. Но я не могу найти ошибку в моем коде.

Это мое состояние дома, и если я прокомментирую строку return post.getAll();, я не получу ошибку, очевидно.

.state('home', { 
    url: '/home', 
    templateUrl: '../assets/angular-app/templates/_home.html.haml', 
    controller: 'mainCtrl', 
    resolve: { 
    postPromise: ['posts', function(posts){ 
     return posts.getAll(); 
    }] 
    } 
}) 

The getAll(); упоминается здесь в моей службе.

.factory('posts', [ 
    '$http', 
    function(){ 
     var o = { 
     }; 
     return o; 

     o.getAll = function() { 
     return $http.get('/posts.json').success(function(data){ 
      angular.copy(data, o.posts); 
     }); 
     }; 
    } 
]) 

Таким образом, я думаю, что ошибка должна быть в одном из этих кодов, любых идей?

У меня есть 2 шаблонов, которые я включаю,

posts.html.haml

%div{"ng-repeat" => "comment in post.comments | orderBy:'-upvotes'"} 
    {{comment.upvotes}} - by {{comment.author}} 
    %span{:style => "font-size:20px; margin-left:10px;"} 
    {{comment.body}} 

%form{"ng-submit" => "addComment()"} 
    %h3 Add a new comment 
    .form-group 
    %input.form-control{"ng-model" => "body", :placeholder => "Comment", :type => "text"} 
    %button.btn.btn-primary{:type => "submit"} Post 

%a{"ui-sref" => "home"} Home 

И home.html.haml

%form{"ng-submit" => "addPost()"} 
    %input{:type => "text", "ng-model" => "title"} 
    %button{:type => "submit"} Post 

%h1 
    Posts 
%div{"ng-repeat" => "post in posts | orderBy: '-upvotes'"} 
    {{ post.title }} - upvotes: {{ post.upvotes }} 
    %a{:href => "#/posts/{{$index}}"} Comments 

Я комментировал как файлы, и до сих пор ошибка дается.

+1

Возможно, на ваш взгляд есть ошибка. как вложенный ng-повтор или что-то, что заставляет цикл дайджеста повторяться более 10 раз. Вы не смогли добавить код шаблона? – MoLow

+0

@MoLow Я добавил код шаблона, но это не проблема. Когда я комментирую весь код haml, он все еще дает ошибку. –

ответ

0

После некоторого исследования я обнаружил, что return o; в сервисе должен находиться в нижней части файла.

Смежные вопросы