" $注射器:modulerr" :模块名称的抛出错误不可用,但实际上它可用

时间:2016-07-27 09:37:05

标签: javascript angularjs

我刚开始学习angularjs我试过这段代码: 在文件angularmy.js

var myname = angular.module("myModule",[]);
myname.controller("myController" , function($scope){
$scope.message = "Hello lady";
}); 

在HTML中:

<!DOCTYPE HTML>
<html  >
    <head> 
        <script src = "angular.js"></script>
        <script src = "angularmy.js"></script>
    </head>
    <body ng-app = "myname"  >
        <div id="div1" ng-controller = "myController">
            {{ message }}
        </div>
    </body>
</html>

抛出错误未捕获错误:[$ injector:modulerr]无法实例化模块myname,原因如下: 错误:[$ injector:nomod]模块&#39; myname&#39;不可用!您要么错误拼写了模块名称,要么忘记加载它。如果注册模块,请确保将依赖项指定为第二个参数。     但是模块名称是&#34; myname&#34;只是,为什么我会出现错误?

2 个答案:

答案 0 :(得分:1)

我认为这是一个错字。它必须是

var myname = angular.module("myname",[]);

另请注意,在注入依赖项时最好使用 Inline Array Annotation

否则,在使用缩小代码运行应用程序时,您可能会看到同样的错误

//Note `[` brace
myname.controller("myController" ,['$scope, function($scope){ 
//Rest of code
}]);

答案 1 :(得分:0)

你的ng-app名称应该是myModule而不是HTML格式的myname。 - &GT; ng-app="myModule"