2013-06-25 16 views
8

Bu benim rotabenim denetleyicisi içine çözülmesine veri enjekte edebilir

app.controllers.controller('blogEditPostController', function(loadData) { 

}); 

ve bu blog hizmetidir:

app.services.factory('blog', function ($http) { 
    return { 
    getPosts: function(page, fn) { 
     $http.get('/api/posts/' + page). 
      success(function(data) { 
       fn(data); 
      }); 
    }, 
    getPost: function(id, fn) { 
     $http.get('/api/post/' + id). 
     success(function(data) { 
       console.log(data); 
       fn(data); 
     }); 
    } 
    }; 
}); 

defer.resolve işlevi çağrılır, şablonum yüklenir ve sonuç değişkeninin içeriği doğru olur; ama bu hatayı alıyorum:

Error: Circular dependency: at Error() at getService (http://ajax.googleapis.com/ajax/libs/angularjs/1.1.5/angular.js:2884:17) at invoke (http://ajax.googleapis.com/ajax/libs/angularjs/1.1.5/angular.js:2909:13) at Object.instantiate (http://ajax.googleapis.com/ajax/libs/angularjs/1.1.5/angular.js:2943:23) at http://ajax.googleapis.com/ajax/libs/angularjs/1.1.5/angular.js:5368:28 at http://ajax.googleapis.com/ajax/libs/angularjs/1.1.5/angular.js:4937:17 at forEach (http://ajax.googleapis.com/ajax/libs/angularjs/1.1.5/angular.js:155:20) at nodeLinkFn (http://ajax.googleapis.com/ajax/libs/angularjs/1.1.5/angular.js:4922:11) at compositeLinkFn (http://ajax.googleapis.com/ajax/libs/angularjs/1.1.5/angular.js:4550:15) at compositeLinkFn (http://ajax.googleapis.com/ajax/libs/angularjs/1.1.5/angular.js:4553:13)

Burada ne eksik:

Error: Unknown provider: loadDataProvider <- loadData at Error() at http://ajax.googleapis.com/ajax/libs/angularjs/1.1.5/angular.js:2765:19 at Object.getService [as get] (http://ajax.googleapis.com/ajax/libs/angularjs/1.1.5/angular.js:2891:39) at http://ajax.googleapis.com/ajax/libs/angularjs/1.1.5/angular.js:2770:45 at getService (http://ajax.googleapis.com/ajax/libs/angularjs/1.1.5/angular.js:2891:39) at invoke (http://ajax.googleapis.com/ajax/libs/angularjs/1.1.5/angular.js:2909:13) at Object.instantiate (http://ajax.googleapis.com/ajax/libs/angularjs/1.1.5/angular.js:2943:23) at http://ajax.googleapis.com/ajax/libs/angularjs/1.1.5/angular.js:5368:28 at http://ajax.googleapis.com/ajax/libs/angularjs/1.1.5/angular.js:4937:17 at forEach (http://ajax.googleapis.com/ajax/libs/angularjs/1.1.5/angular.js:155:20) angular.js:6349

Ben bu hatayı alıyorum yukarıdaki hatayı aldıktan sonra tekrar görünümü yüklemeyi deneyin

? Daha önce aynı sözdizimini kullandım ve iyi çalıştı.

cevap

15

Denetleyiciyi iki kez eklediğimi söndürüyor. Rotada ve ayrıca HTML Şablonunda. Şimdi HTML şablonundan kaldırdım ve her şey çalışıyor!

+2

Günümü kurtardınız !!!!! – coure2011

+0

Bu benim de problemimdi, yaşları anlamaya çalışıyordum. Teşekkürler! – sugarwaffle

+0

Vay, ng-denetleyicimi html'imden kaldırdım ve işler çalışmaya başladı. tricky one .. –

İlgili konular