Heim > Web-Frontend > js-Tutorial > Warum ist mein AngularJS-Controller undefiniert und wie kann ich ihn korrekt registrieren?

Warum ist mein AngularJS-Controller undefiniert und wie kann ich ihn korrekt registrieren?

DDD
Freigeben: 2024-12-16 06:07:15
Original
735 Leute haben es durchsucht

Why is my AngularJS Controller undefined, and how can I register it correctly?

Fehler in AngularJS: Controller-Registrierung

Frage:

Beim Versuch, Controller global zu definieren In einer AngularJS-Anwendung wird der Fehler „Controller ist keine Funktion, wurde undefiniert“ angezeigt. tritt auf.

Antwort:

Ab AngularJS 1.3 wird die globale Controller-Deklaration nicht mehr unterstützt. Controller müssen jetzt mit der module.controller-Syntax registriert werden.

Registrierungsmethoden:

  1. Mit der .controller()-Methode:
angular.module('app', []).controller('ContactController', ['$scope', function($scope) {
  // Controller logic
}]);
Nach dem Login kopieren
  1. Abhängigkeit verwenden Injektion:
function ContactController($scope) {
  // Controller logic
}
ContactController.$inject = ['$scope'];
angular.module('app', []).controller('ContactController', ContactController);
Nach dem Login kopieren

Alternative: Globals zulassen

Die Verwendung globaler Controller kann durch die Einstellung von AllowGlobals im $controllerProvider wieder aktiviert werden :

angular.module('app').config(['$controllerProvider', function($controllerProvider) {
  $controllerProvider.allowGlobals();
}]);
Nach dem Login kopieren

Zusätzlich Überlegungen:

  • Stellen Sie sicher, dass die ng-app-Direktive im Stammelement der Anwendung enthalten ist.
  • Stellen Sie sicher, dass die richtige Datei in den Skripten enthalten ist.
  • Vermeiden Sie die mehrfache Definition desselben Moduls, da dies zuvor registrierte Entitäten überschreiben kann.

Das obige ist der detaillierte Inhalt vonWarum ist mein AngularJS-Controller undefiniert und wie kann ich ihn korrekt registrieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage