我有一个api
模块,它定义了一堆子模块search
,cart
等。api
模块定义了所有子模块的一堆函数可以使用,但我不能让它工作,因为它给了我Circular Dependency
错误。
var app = angular.module('api', [
'api.search'
]);
app.service('api', function($cookies, $http, $rootScope, search){
var data = {
user: {
token: null,
userid: null
},
baseurl: 'http://website.com'
};
this.search = search;
});
然后例如在我的搜索模块中我有这个:
var app = angular.module('api.search', []);
app.service('search', function($http, api){
this.lookup = function(domain){
var baseurl = getData('baseurl');
return $http({
url: baseurl + '/domain/search',
method: 'post',
data: {domain: domain}
});
};
});
当我像上面那样注入api
时,就是当我收到Circular Dependency
错误时:
https://docs.angularjs.org/error/ $注射器/ CDEP?P0 = API%20%3 C-%20search%20%3 C-%20api
答案 0 :(得分:0)
您正在将搜索服务注入api服务,并将api服务注入搜索服务。
app.service('api', function($cookies, $http, $rootScope, **search**){
app.service('search', function($http, **api**){
你必须选择其中一个。目前,它只是重新注入彼此,直到抛出错误。您只需要解决其中一项服务:
app.service('api', function($cookies, $http, $rootScope){
app.service('search', function($http, **api**){