Я все еще очень новичок в AngularJS и работаю над настройкой своего первого приложения. Я хотел бы иметь возможность сделать следующее:
angular.module('App.controllers', [])
.controller('home', function () {
$scope.property = true;
}]);
angular.module('App', ['App.controllers'])
.config(['$routeProvider', function($routeProvider) {
$routeProvider.when('/', {templateUrl: 'partials/home.html', controller: home});
}]);
С помощью этой настройки создается следующая ошибка:
Uncaught ReferenceError: home is not defined from App
Мой вопрос: как я могу зарегистрировать контроллеры с помощью angular.module.controller()
(или $controllerProvider.register()
напрямую) и использовать зарегистрированный контроллер в другом месте в своем приложении.
Моя мотивация: я бы хотел избежать использования глобальных функций-конструкторов в качестве моих контроллеров (как и большинство примеров использования angularjs.org) или сложного пространства имен. Если я могу зарегистрировать и использовать контроллеры в качестве имен отдельных переменных (которые затем не помещаются в глобальную область), это было бы идеально.