Heim > Artikel > Web-Frontend > Wie behebt man den „Unabgefangenen Fehler: [$injector:modulerr]“ bei der Migration auf AngularJS v1.3?
In AngularJS Version 1.3 ist die Deklaration globaler Controller-Funktionen nicht mehr zulässig. Stattdessen müssen Entwickler ein AngularJS-Modul erstellen und Komponenten daran anhängen.
Um den Fehler zu beheben, befolgen Sie diese Schritte:
Zum Beispiel:
<code class="js">function Ctrl($scope) { $scope.age = 24; } angular.module('app', []) .controller('Ctrl', ['$scope', Ctrl]);</code>
Hinweis: AngularJS Version 1.3.14 weist einige Probleme mit diesem Ansatz auf. Erwägen Sie daher ein Downgrade auf Version 1.3.13 oder die Verwendung von AngularJS 1.6.X für ein stabileres Erlebnis.
Plunkr-Beispiel (AngularJS 1.3.13):
https://plnkr.co/edit/Ei7P5xJ5NCKz9UEFyWij
Alternative Lösung:
Wenn Sie weiterhin die globale Controller-Deklaration verwenden möchten, können Sie dies in der angle.config zulassen, obwohl dies nicht der empfohlene Ansatz ist:
<code class="js">angular.module('app', []) .config(['$controllerProvider', function ($controllerProvider) { $controllerProvider.allowGlobals(); } ]);</code>
Das obige ist der detaillierte Inhalt vonWie behebt man den „Unabgefangenen Fehler: [$injector:modulerr]“ bei der Migration auf AngularJS v1.3?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!