Controller global in Angular definieren: Fehler und Lösungen
Fehler aufgetreten:
Angular-Anwendungen stoßen gelegentlich auf einen Fehler, der darauf hinweist, dass ein Controller nicht als Funktion erkannt wird, was zu einem undefinierten Status führt. Dieser Fehler kann während der Controller-Definition auf globaler Ebene auftreten.
Lösung:
Ab Angular 1.3 ist die globale Controller-Deklaration veraltet. Controller müssen jetzt mit der Syntax „module.controller“ registriert werden.
Traditionelle Methode (veraltet):
function ContactController($scope) { // Controller logic }
Überarbeitete Methode (Angular 1.3) :
Option 1:
// Register the controller angular.module('app').controller('ContactController', ['$scope', function ContactController($scope) { // Controller logic }]);
Option 2:
// Define the controller as a function function ContactController($scope) { // Controller logic } // Register the controller with its dependency injection ContactController.$inject = ['$scope']; angular.module('app').controller('ContactController', ContactController);
Zusätzliche Überlegungen:
Das obige ist der detaillierte Inhalt vonWarum ist mein Angular Controller undefiniert und wie kann ich das Problem beheben?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!