我有一个Angular应用程序,包含两个模块(两个页面),一个是登录,另一个是应用程序的其余部分。
所以我在login.js文件中有以下内容:
var app = angular.module('morpheuslogin', ['ngRoute']);
现在在我的另一个模块上(它完全独立运行)我尝试注入第一个模块,如下所示:
var morpheusApp = angular.module('morpheusApp', ['ngRoute', 'morpheuslogin']);
现在,当我启动应用程序时,我在加载 morpheusApp 模块时会得到以下内容。
由于以下原因导致无法实例化模块morpheusApp: 错误:[$ injector:modulerr] http://errors.angularjs.org/1.5.6/ $ injector / modulerr?p0 = m ...)
我知道也可以在模块之间应用注入。这两个模块位于不同的js文件中,位于我项目的 public / 文件夹中的不同文件夹中。
这里发生了什么? 这个案例的最佳做法是什么?
谢谢。!
答案 0 :(得分:0)
无需在两个模块中注入两次ngRoute,只在父模块中使用
angular.module('morpheuslogin',[]);
父模块将
var morpheusApp = angular.module('morpheusApp', ['ngRoute', 'morpheuslogin']);