Ich arbeite mit Angular in der MEAN-Stack und ich versuche, Angular zu integrieren, aber ich laufe immer wieder in diese Fehler.Fehler: [ng: Areq] Argument 'CompanyCtrl' ist keine Funktion, undefined
Uncaught SyntaxError: Unexpected token < Error: [ng:areq] Argument 'CompanyCtrl' is not a function, got undefined
Hier sind meine Dateien:
index.html
<!DOCTYPE html>
<html ng-app="dashboard">
<head>
<meta charset="utf-8">
<title>TappShops - Dashboard</title>
<base href="/">
<!-- inject:css -->
<!-- endinject -->
<script src="../lib/angular/angular.js"></script>
<script src="../lib/angular-route/angular-route.js"></script>
<script src="../lib/angular-resource/angular-resource.js"></script>
<script src="../app/js/app.js"></script>
<!-- inject:js -->
<script src="features/company/company.controller.js"></script>
<!-- endinject -->
</head>
<body>
<div ng-controller="CompanyCtrl as company">
{{company.test}}
</div>
</body>
</html>
app.js
(function() {
'use strict';
angular
.module('dashboard', [
'ngRoute',
'ngResource'
])
})();
company.controller.js
(function() {
'use strict';
angular
.module('dashboard')
.controller('CompanyCtrl', CompanyCtrl);
CompanyCtrl.$inject = [
];
function CompanyCtrl() {
var vm = this;
vm.test = "Hello World!";
};
})();
Vielen Dank im Voraus für jede Hilfe. :)
Sind Sie sicher, es gibt keine weiteren Fehler in dem Stapel? Weil das alles gut aussieht. – Lex
Ist der Pfad zu 'company.controller.js' korrekt? Ich bemerke, dass es das führende '../' nicht gibt, das alle deine anderen Wege haben. – Lex
Das ist neben dem Punkt, aber warum mit module.controller arbeiten? Es gilt als veraltete Praxis (manche würden schlechte Praxis sagen). Verwenden Sie stattdessen Anweisungen/Komponenten, jede hat ihren eigenen Controller. – yccteam