1
私はMEANスタックでAngularを使用していますが、Angularを統合しようとしています。ここでエラー:[ng:areq]引数 'CompanyCtrl'が関数ではありません。定義されていません。
Uncaught SyntaxError: Unexpected token < Error: [ng:areq] Argument 'CompanyCtrl' is not a function, got undefined
は、私のファイルは、以下のとおりです。
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!";
};
})();
ご協力いただきありがとうございます。 :)
あなたは、スタック内の他のエラーはこの1つ前にありません特定のか?そのすべてが有効と思われるからです。 – Lex
'company.controller.js'へのパスは正しいですか?あなたの他のすべての道が持っている主要な '../'が欠けていることがわかります。 – Lex
それはポイントの横にあるのですが、なぜmodule.controllerで動作するのですか?それは時代遅れの習慣と見なされます(悪い習慣を言う人もいます)。代わりにディレクティブ/コンポーネントを使用します。それぞれに独自のコントローラがあります。 – yccteam