«$ Injector: modulerr»: ошибка выдачи имени модуля недоступна, но фактически она доступна

0

Я только начал изучать 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>

Это ошибка, указывающая на ошибку Uncaught: [$ injector: modulerr] Не удалось создать экземпляр модуля myname из-за: Ошибка: [$ injector: nomod] Модуль 'myname' недоступен! Вы либо ошибочно написали имя модуля, либо забыли загрузить его. Если регистрация модуля гарантирует, что вы укажете зависимости в качестве второго аргумента. Но имя модуля только "myname", то почему я получаю ошибку?

Теги:

2 ответа

1
Лучший ответ

Я думаю, что это опечатка. Это должно быть

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

Также обратите внимание, что лучше использовать Inline Array Annotation при инъекции зависимостей.

Кроме того, вы можете увидеть эту ошибку при запуске приложения с мини-кодом

//Note '[' brace
myname.controller("myController" ,['$scope, function($scope){ 
//Rest of code
}]);
  • 0
    Большое спасибо ... это действительно так, но это была не опечатка, я подумал, что я должен использовать "myname" в качестве имени модуля в html, а не "myModule"
0

Ваше имя ng-app должно быть myModule, а не myname в HTML. → ng-app="myModule"

Ещё вопросы

Сообщество Overcoder
Наверх
Меню