控制器无法识别工厂
factory isnt recognized by controller
我有一个控制器,"ListController",需要用服务器端数据填充它。
app.controller("ListController", function(){
var bar = this;
bar.venues = MyFactory.load();
}
我想从服务器获取 json 数组,所以我想创建一个利用“$http”的工厂:
app.factory("MyFactory", ["$https", function($https){
var myService = {};
myService.load = function(){
$http.get("scripts/Query.php").success( function(rows){
myService.rows = rows;
return myService.rows;
};
};
return myService;
}]);
所以,我认为可以从应用程序控制器内部调用 MyFactory。
app 是同一个变量,类型为:angular.module("BarMe", []);
我在 javascript 中遇到的错误是:MyFactory 未定义
你没有在控制器中注入工厂。
这样试试
app.controller("ListController", function(MyFactory){
}
此外你的方法有一个回调直接赋值不会给你带来任何数据
这样试试
MyFactory.load().then(function(data){
bar.venues = data;
});
您还必须 return $http 以及工厂的响应
myService.load = function(){
return $http.get("scripts/Query.php").success( function(rows){
return rows;
};
};
我有一个控制器,"ListController",需要用服务器端数据填充它。
app.controller("ListController", function(){
var bar = this;
bar.venues = MyFactory.load();
}
我想从服务器获取 json 数组,所以我想创建一个利用“$http”的工厂:
app.factory("MyFactory", ["$https", function($https){
var myService = {};
myService.load = function(){
$http.get("scripts/Query.php").success( function(rows){
myService.rows = rows;
return myService.rows;
};
};
return myService;
}]);
所以,我认为可以从应用程序控制器内部调用 MyFactory。
app 是同一个变量,类型为:angular.module("BarMe", []);
我在 javascript 中遇到的错误是:MyFactory 未定义
你没有在控制器中注入工厂。
这样试试
app.controller("ListController", function(MyFactory){
}
此外你的方法有一个回调直接赋值不会给你带来任何数据
这样试试
MyFactory.load().then(function(data){
bar.venues = data;
});
您还必须 return $http 以及工厂的响应
myService.load = function(){
return $http.get("scripts/Query.php").success( function(rows){
return rows;
};
};