当我尝试运行下面的代码时,我得到两个错误,说
错误:[$ injector:nomod]模块'房间'不可用!你要么 拼写错误的模块名称或忘记加载它。如果注册了 模块确保您将依赖项指定为第二个 参数。
错误:[$ injector:modulerr]无法实例化 模块应用程序由于:[$ injector:nomod]模块' app'不可用! 您要么错误拼写了模块名称,要么忘记加载它。如果 注册模块确保您将依赖项指定为 第二个论点。
我可以看到我没有在任何地方错误拼写模块的名称,我已经包含了必要模块的依赖项,并且我已经按照必要的顺序构建了模块,因此没有任何模块未定义彼此之间(如在room.controllers模块注入之前存在,并且房间模块在注入应用程序模块之前就已存在
(function(){
'use strict';
//create the module that is going to contain the controllers for the rooms module
angular.module('rooms.controllers', [])
.controller('RoomCtrl', RoomCtrl);
function RoomCtrl(){
var vm = this;
vm.rooms = [];
};
})();
(function(){
'use strict';
//create the rooms module and inject rooms.controllers module and ngRoute module
angular
.module('rooms', ['rooms.controllers', 'ngRoute']);
});
(function(){
'use strict';
//get the rooms module and config it's routes, because we're getting it we don't need []
angular
.module('rooms')
.config(function($routeProvider){
$routeProvider
.when('/rooms',{
templateUrl:'public/modules/rooms/templates/roomlist.html',
controller: 'RoomCtrl',
controllerAs: 'room'
})
})
})();
(function(){
'use strict';
//bootstrap the whole thing together
angular.module('app', ['rooms']);
})();
答案 0 :(得分:2)
此代码块未执行。
(function(){
'use strict';
//create the rooms module and inject rooms.controllers module and ngRoute module
angular.module('rooms', ['rooms.controllers', 'ngRoute']);
})(); // <-- here