ですから、答えを見たときに本当にばかげていると感じることはすでにわかっていますが、egghead.io の AngularJS チュートリアルに取り組んでいます。私がこれを行うとき:
<!DOCTYPE html>
<html>
<head>
<title>AngularJS Tutorials</title>
<link rel="stylesheet" href="/foundation/stylesheets/foundation.min.css">
<script src="js/main.js"></script>
<script src="lib/angular/angular.js"></script>
</body>
</head>
<body>
<div ng-app="myApp">
<div ng-controller="FirstCtrl">
<input type="text" ng-model="data.message">
<h1>{{ data.message }}</h1>
</div>
<div ng-controller="SecondCtrl">
<input type="text" ng-model="data.message">
<h1>{{ data.message }}</h1>
</div>
</div>
</html>
私のJavaScriptファイル(main.jsという名前)で:
var myApp = angular.module('myApp', []);
myApp.factory('Data', function() {
return { message: "I'm data from a service"}
})
function FirstCtrl($scope, Data) {
$scope.data = Data;
}
function SecondCtrl($scope, Data) {
$scope.data = Data;
}
My{{ data.message }}
は AngularJS バインディングとして認識されません (つまり、ページでは
{{ data.message }}
ではなくとして表示されます"I'm data from a service"
)。しかし、すべての JS コードを<script></script>
HTML のタグに直接配置すると、問題なく動作します。参照か何かがありませんか?おそらく本当に基本的なものであるため、これはどこにも見つからないようです。