AngularJS控制器函数从未调用过

时间:2014-03-24 15:18:15

标签: javascript angularjs

永远不会调用我的angularjs控制器函数。我看到我的源代码中包含了所有js文件,它只是没有触及我的控制器的初始化。这段代码有什么问题?

eventListCtrl.js:

eventsApp.controller('eventListCtrl', ['$scope', function ($scope) {
    // this code is never called
    alert('controller initializing');
    $scope.name = "Test";
}]);

app.js:

'use strict';

var eventsApp = angular.module('eventsApp', []);

Index.cshtml:

<div ng-controller="eventListCtrl">
    <div class="row">
        <div class="spann11">
            <h2>{{name}}</h2>
        </div>
    </div>
</div>

<script src="/scripts/vendor/angular.js"></script>
<script src="/scripts/app.js"></script>
<script src="/scripts/controllers/eventListCtrl.js"></script>

4 个答案:

答案 0 :(得分:44)

你需要这样做

<html ng-app="eventsApp">

所以你实际上激活了模块

答案 1 :(得分:2)

我想在这里发布我的问题/解决方案,以防有人和我做同样的事情。

<div ng-controller="coolCtrl" ng-if="VAR">

我试图在一个没有创建的元素上启动一个控制器(因为ng-if="var"
facepalm

答案 2 :(得分:0)

疯狂猜测:

angular.module('eventsApp').controller('eventListCtrl', ['$scope', function ($scope) {
    // this code is never called
    alert('controller initializing');
    $scope.name = "Test";
}]);

在您的控制器文件中?

答案 3 :(得分:0)

<html ng-app="eventsApp">
<div ng-controller="eventListCtrl">
    <div class="row">
        <div class="spann11">
            <h2>{{name}}</h2>
        </div>
    </div>
</div>

<script src="/scripts/vendor/angular.js"></script>
<script src="/scripts/app.js"></script>
<script src="/scripts/controllers/eventListCtrl.js"></script>
</html>

这个应该可以解决