Angularapp1 (5 de 9): app.js
Éste es el código completo:
>>>>>>
var myApp = angular.module(‘angularapp1′, ['ngRoute']).
config(['$locationProvider', '$routeProvider', function($locationProvider, $routeProvider) {
$locationProvider.hashPrefix('!');
$routeProvider.otherwise({redirectTo: '/home'});
}]);
myApp.controller(‘MyAppController’, ['$scope', '$location', function($scope, $location) {
console.log("[MyAppController]“);
$scope.model = new Model();//este objeto lo heredan el resto de controllers
console.log(“[MyAppController]$scope.model: ” + $scope.model);
console.log($scope.model);
$scope.go = function ( path ) {
$location.path( path );
};
}]);
>>>>>>
Vemos que en la línea
var myApp = angular.module(‘angularapp1′, ['ngRoute']).
se hace referencia a lo que en el index.html se puso como ng-app.
Con la línea
$routeProvider.otherwise({redirectTo: ‘/home’});
Simplemente le decimos que al entrar en la aplicación vaya al /home. Veremos posteriormente que cada controlador de sección tendrá su propia instrucción para su ruta.
Vemos en la línea
myApp.controller(‘MyAppController’, [‘$scope’, ‘$location’, function($scope, $location) {
que se hace referencia al ‘MyAppController’, que en el index.hmtl se puso en el ng-controller.
Es el controlador general de la aplicación y lo único que hago en él es definir la función go que se usará en el botón de ir a la home, e inicializar el model de esta manera:
$scope.model = new Model();
Esto es lo más importante de todo. El único sitio donde creo un model es aquí y lo meto en el $scope.
El resto de controladores de sección que veremos luego accederán a este $scope.model puesto que heredarán del controlador principal.