angular js:module不可用,并且未定义范围

时间:2014-08-05 12:24:11

标签: angularjs angularjs-scope

我仍然相对较新的角度,我正在尝试构建一些东西,但我一直收到模块' ngDirTest不可用的错误',我把它放在body标签中:

<!DOCTYPE html>
<html>
<head lang="en">
    <meta charset="UTF-8">
    <title>Testing directives</title>
    <script src="../scripts/angular.js"></script>
    <script type="text/javascript">
        angular.module('ngDirTest', [
                //controllers
        ])
    </script>
    <script src="../scripts/populate.js"></script>
    <script src="../directive/GenericDirective.js"></script>
</head>

<body ng-app="ngDirTest">

<div ng-controller="PopulateCtrl">
    <input type="text" generic-directive ng-model="nameone"/>
    <input type="text" generic-directive ng-model="nametwo"/>
    <input type="text" generic-directive ng-model="namethree"/>
    <input type="text" generic-directive ng-model="namefour"/>
    <input type="text" generic-directive ng-model="namefive"/>
    <input type="text" generic-directive ng-model="namesix"/>
</div>

</body>
</html>

我也有这个控制器:

angular.module("ngDirTest").controller('PopulateCtrl', ['$scope', function($scope) {

    //

}]);

我尝试在顶部指定模块,但问题是我不知道如何在这里定义控制器:

angular.module('ngDirTest', [/*controllers and other dependancies*/])

它还抱怨范围没有定义,我不明白,因为角度定义在顶部......

1 个答案:

答案 0 :(得分:2)

您不需要在模块声明中定义控制器,这些控制器应该用于声明其他模块依赖项。

尝试使用此模块声明:

angular.module('ngdirTest', []);

你的控制器看起来还不错

angular.module("ngDirTest").controller('PopulateCtrl', ['$scope', function($scope) {
    // ...
}]);

使用上面粘贴的标记查看jsBin