使用通过angular.module()controller()创建的AngularJS控制器

【字号: 日期:2024-04-09浏览:16作者:雯心
(adsbygoogle = window.adsbygoogle || []).push({}); 如何解决使用通过angular.module()controller()创建的AngularJS控制器?

尝试使用字符串标识符。

routeProvider.when(’/’, {templateUrl: ’partials/home.html’, controller:’home’});

当您使用文字时,它正在寻找一个名为的变量home,但在这种情况下不存在。

解决方法

我对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上的大多数示例一样使用)或复杂的命名空间。如果我可以将控制器注册并用作单个变量名(然后不放在全局范围内),那将是理想的选择。

相关文章: