AngularJS $范围数据未在视图中呈现

时间:2014-02-14 17:46:39

标签: javascript angularjs mean-stack

过去几天我一直在努力解决这个问题,现在我相信是时候向社区寻求帮助了。

我正在使用MEAN堆栈创建一个网站,这是我第一次使用Angular JS,所以我是一个noobie。

我遇到的问题是,我无法在视图中呈现任何$ scope数据。这让我疯狂,因为AngularJS chrome调试器显示$ scope数据存在!但它不会在我的模板中呈现。

应用结构

  • /公共
    • / JS
      • /控制器
        • -user.js
    • -app.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数据。

1 个答案:

答案 0 :(得分:0)

我不确定您的问题是什么,但如果“PCT”是您的模块(它应该与名称ng-app和app.module(“PCT”)匹配,如果您正在定义控制器则无需注入控制器使用

angular.module('PCT').controller('userController', ['$scope', function($scope){

}]);

这是工作人员的一部分。

使用Logout更新,它被称为console.log ...

http://plnkr.co/edit/uSLVqEayCh2XeeGI7LZe?p=preview

如果需要任何进一步的帮助,请告诉我。