Javascript 为什么我会得到';工厂未定义';angularjs中的错误?
你能帮我找出这段代码的错误吗,它说“foodFactory未定义”。我还在学习angularjs,所以可能会有错误,但我正在尝试使用routes+factoryJavascript 为什么我会得到';工厂未定义';angularjs中的错误?,javascript,html,angularjs,Javascript,Html,Angularjs,你能帮我找出这段代码的错误吗,它说“foodFactory未定义”。我还在学习angularjs,所以可能会有错误,但我正在尝试使用routes+factory var foodApp = angular.module("foodApp", ["ngRoute"]); foodApp.config(function($routeProvider) { $routeProvider .when('/
var foodApp = angular.module("foodApp", ["ngRoute"]);
foodApp.config(function($routeProvider)
{
$routeProvider
.when('/',
{
controller: 'foodController',
templateUrl: '/routes/view1.html'
})
.when('/view2',
{
controller: 'foodController',
templateUrl: '/routes/view2.html'
})
.when('/view3',
{
controller: 'foodController2',
templateUrl: '/routes/view3.html'
})
.otherwise
({ redirectTo: '/' });
});
foodApp.factory("foodFactory", function()
{
var foods = [
{name: "Bread"},
{name: "Cheese"},
{name: "Blackberries"}
];
var factory = {};
factory.getFoods = function ()
{
return foods;
};
return factory;
});
var controllers = {};
controllers.foodController = function($scope)
{
$scope.foods = foodFactory.getFoods();
$scope.foods2 = foodFactory.getFoods();
};
controllers.foodController2 = function($scope)
{
$scope.foods = foodFactory.getFoods();
};
foodApp.controller(controllers);
view1.html、view2.html和view3.html-都很好,路由也可以工作,但它不能从工厂返回食物数组。非常感谢,就这样!
controllers.foodController = function($scope,foodFactory) // you need to inject foodFactory
{
$scope.foods = foodFactory.getFoods();
$scope.foods2 = foodFactory.getFoods();
};
controllers.foodController2 = function($scope,foodFactory) // you need to inject foodFactory
{
$scope.foods = foodFactory.getFoods();
};