过去几天我一直在努力解决这个问题,现在我相信是时候向社区寻求帮助了。
我正在使用MEAN堆栈创建一个网站,这是我第一次使用 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');
}
}]);
我可以单击菜单中的注销按钮,这将触发控制台日志,因此它正在进入控制器。但它根本不会显示我的 $scope 数据。