Ich bin der Versuchen AngularJS: Anfängerhandbuch auf udemy und ich habe ein seltsames Problem. Der folgende Code funktioniert für den Kursmanager, nicht jedoch für einige Benutzer.AngularJS-Controller nicht beim Kopieren von Code
index.html
<html lang="en" ng-app='try'>
<head>
<script src="./js/angular.min.js"></script>
<script src="./js/app/app.module.js"></script>
<script src="./js/app/app.config.js"></script>
<script src="./js/app/blog-list/blog-list.module.js"></script>
<script src="./js/app/blog-list/blog-list.component.js"></script>
</head>
<body>
<div class='' ng-controller='BlogListController'></div>
</body>
</html>
app.module.js
'use strict';
angular.module('try', ['blogList']);
app.config.js
'use strict';
angular.module('try', [])
.config(function(){});
Blog-list.module.js
'use strict';
angular.module('blogList', []);
Blog-list.component.js
'use strict';
angular.module('blogList').
controller('BlogListController', function(){
console.log("hello")
});
Ich erhalte einen Fehler
Den Controller mit dem Namen 'BlogListController' ist nicht registriert.
Aber wenn in der Datei Blog-list.component.js ich die Modulnamen ändern:
'use strict';
angular.module('try'). <---- CHANGED THIS
controller('BlogListController', function(){
console.log("hello")
});
Es funktioniert.
Warum funktioniert der Code vor dem Fix für den Kursmanager? Was ist die richtige Antwort?
PS: Alles wird in der Reihenfolge geladen, die die index.html
Dateien angibt.
Vielen Dank im Voraus.
weil der Controller nicht innerhalb des 'try' Moduls existiert. was du in der html 'ng-app = 'try' deklariert hast. füge 'ng-pp =" blogList "' in html hinzu, dann funktioniert das. –
@SibiRaj Warum funktioniert der Code des Instruktors mit 'ng-app =" try "'? –
Ich weiß nicht, was der Ausbilder gesagt hat. eine einfache Logik. Sie haben das in einem anderen Modul definiert. Wie kann man erwarten, dass irgendwo gearbeitet wird, wo der Controller nie definiert ist –