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);
グローバル宣言を使用したい場合は、でallowGlobalsを設定することでそれらを有効にできます。 $controllerProvider.
angular.module('app') .config(['$controllerProvider', function($controllerProvider) { $controllerProvider.allowGlobals(); }]);
以上がAngular 1.3 の「引数 'ContactController' は関数ではありません」エラーを修正する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。