2
コードに何が問題なのか教えてください。何も見逃していないからです。授業中は全部動いていた。私はJavaScriptと角度にはかなり新しいです。エラー:[ng:areq]引数 'angularJSCtrl'は関数ではありません。定義されていません。
同じエラーで他のスレッドをチェックしようとしましたが、問題の解決に役立たなかった。
index.htmlを
<!DOCTYPE html>
<html ng-app="angularJS">
<head>
<script src="/bower_components/angular/angular.js"></script>
<script src="app.js"></script>
<script src="controller.js"></script>
</head>
<body>
{{"Type your name"}}
<div ng-controller="angularJSCtrl as kontrol">
<button ng-click ="kontrol.sayHello()"> Click here </button>
<input type="text" ng-model="kontrol.name">
<h3> All students list </h3>
<div ng-repeat="el in kontrol.studentObj">
<div ng-show="{{ el.age < 20 }}"> {{el}}</div>
</div>
<includer></includer>
<br>
{{ kontrol.price | currency}}
<br>
{{ kontrol.date | date}}
</div>
controller.js
(function() {
angular.module("angularJS")
.controller("angularJSCtrl", angularJSMethod);
.directive("directCtrl", directMethod);
function angularJSMethod(){
var vm = this;
vm.sayHello = sayHello;
vm.name = "Orkun";
vm.studentNames = ['John', 'Robbert', 'Adam'];
vm.studentObj = [{name: 'Orkun', age: 22}, {name: 'Bob', age: 18}];
vm.price = 2000;
vm.date = new Date();
function sayHello(){
alert("Welcome" + ' ' + vm.name)
}}
function directMethod(){
return {
restrict: 'E',
templateUrl: 'custom.html'
}
}
})();
app.js
(function() {
angular.module("angularJS", []);
})();
正常に動作しますが、あなたはkontrol' ''としてas'を宣言するが、あなたのコントローラであなたは、VMとして 'as'を宣言します。あなたのhtmlも 'vm'でなければなりません。 'ng-controller =" angularJSCtrlをvm " –