ここ数日間、この問題に苦しんでいましたが、今こそコミュニティに手を差し伸べて助けを求めるときだと思います.
MEANスタックを使用して Web サイトを作成しています。Angular JS を使用するのはこれが初めてなので、初心者です。
私が抱えている問題は、ビューに $scope データをレンダリングできないことです。AngularJS chrome デバッガーが $scope データがそこにあることを示しているため、これは私を夢中にさせています!!! しかし、それは私のテンプレートではレンダリングされません。
アプリの構造
- /公衆
- /js
- /コントローラ
- -user.js
- /コントローラ
- -app.js
- /js
- /ビュー
- -index.html
私のhtmlの内容 - ファイル全体をコピーするのではなく、角度のある部分のみをコピーします。
<!doctype html>
<html ng-app="PCT">
<div ng-controller="userController" class="column">
<a class="dropdown-toggle" data-toggle="dropdown" href="#userinfo" >
<img ng-src="{{user.img}}" style="width:40px; height:50px;" />
</a>
<ul class="dropdown-menu" role="menu">
<li><strong>{{user.name}}</strong></li>
<li><a ng-click="logOut()">Sign Out</a></li>
<li><a href="">Admin Site</a></li>
</ul>
</div>
<script src ="js/app.js"></script>
<script src="js/controllers/user.js"></script>
私のapp.jsの内容
angular.module('PCT.userController',[]);
//Importing all modules into main module
angular.module('PCT',['PCT.userController']);
私のuser.js(コントローラー)の内容
angular.module('PCT').controller('userController', ['$scope', function($scope){
$scope.user = {
img : 'http://path/to/usr/img/user.jpg',
name : 'mcutalo'
};
$scope.logOut = function(){
console.log('logging out');
}
}]);
メニューの [Logout] ボタンをクリックすると、コンソール ログがトリガーされ、コントローラにログが送信されます。しかし、私の $scope データはまったく表示されません。