在 angular 工厂中使用第三方库
Use third party library in a angular factory
这是我的工厂:
.factory('DataService',['$http',function($http, Backand ){
var data = [];
return {
GetData: function(){
return $http.get(Backand.getApiUrl() + '/1/objects/details').then(function(response){
data = response;
return response;
});
},
GetElem: function(personId){
for(i=0;i<data.length;i++){
if(data[i].id == personId){
return data[i];
}
}
}
}
}]);
现在是问题。第三方库 Backand
已正确注入,但出现错误:Cannot read property 'getApiUrl' of undefined
因此 Backand 未定义。当我在控制器中使用 Backand 时,一切正常。
我应该怎么做才能解决这个问题?
您在注射
时遗漏了 Backand
改变这个:
.factory('DataService',['$http',function($http, Backand ){
为此:
.factory('DataService',['$http', 'Backand',function($http, Backand ){
希望这对你有用。
这是我的工厂:
.factory('DataService',['$http',function($http, Backand ){
var data = [];
return {
GetData: function(){
return $http.get(Backand.getApiUrl() + '/1/objects/details').then(function(response){
data = response;
return response;
});
},
GetElem: function(personId){
for(i=0;i<data.length;i++){
if(data[i].id == personId){
return data[i];
}
}
}
}
}]);
现在是问题。第三方库 Backand
已正确注入,但出现错误:Cannot read property 'getApiUrl' of undefined
因此 Backand 未定义。当我在控制器中使用 Backand 时,一切正常。
我应该怎么做才能解决这个问题?
您在注射
时遗漏了Backand
改变这个:
.factory('DataService',['$http',function($http, Backand ){
为此:
.factory('DataService',['$http', 'Backand',function($http, Backand ){
希望这对你有用。