Angular 1.3 已弃用在全局范围内使用全局控制器声明。此问题表现为错误,指出“参数‘ContactController’不是函数,未定义”,从而阻止在未显式注册的情况下全局定义控制器。
要解决此问题,应使用 module.controller 语法注册控制器。例如:
angular.module('app', []).controller('ContactController', ['$scope', function ContactController($scope) { // Controller logic }]);
或者,您可以将控制器作为函数注入:
function ContactController($scope) { // Controller logic } ContactController.$inject = ['$scope']; angular.module('app', []).controller('ContactController', ContactController);
如果您更喜欢使用全局声明,您可以可以通过在$controllerProvider中设置allowGlobals来启用它们。
angular.module('app') .config(['$controllerProvider', function($controllerProvider) { $controllerProvider.allowGlobals(); }]);
以上是如何修复 Angular 1.3 中的'参数'ContactController'不是函数”错误?的详细内容。更多信息请关注PHP中文网其他相关文章!