could you help me find what's wrong with this code, it says "foodFactory is not defined". I'm still learning angularjs so there may be errors, but I'm trying to use routes + factory.
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 and view3.html - are fine, routes are working too but it just doesn't return foods array from factory.