javascript - angular controller 获取不到factory 里的数据 报错信息 is not a function
本文介绍了javascript - angular controller 获取不到factory 里的数据 报错信息 is not a function的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
问 题
这是factory 里的内容
angular.module('partsShopApp').factory('indexInfo',function($http,$q){
return {
query: function(){
var deferred = $q.defer();
$http.jsonp('http://xxx:8080/testIndex.html?callback=JSON_CALLBACK')
.then(function(data,status,headers,config){
deferred.resolve(data);
},function(data){
deferrd.reject(data);
});
return deferred.promise;
}
};
});
这是控制器里的内容
angular.module('partsShopApp').controller('home', ['indexInfo', '$scope','$q', function ($scope,$q, indexInfo) {
indexInfo.query.then(function(data){
$scope.data = data;
},function(data){
console.log('aaa');
});
}]);
这是报错信息
如果 把 控制器 的内容改成 query()
angular.module('partsShopApp').controller('home', ['indexInfo', '$scope','$q', function ($scope,$q, indexInfo) {
indexInfo.query().then(function(data){
$scope.data = data;
},function(data){
console.log('aaa');
});
}]);
会报错
怎么办呢?
解决方案
注入服务顺序和控制器中的顺序不一样
这篇关于javascript - angular controller 获取不到factory 里的数据 报错信息 is not a function的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文