2016-11-30 92 views
0

我有一個頁面html1.html與模塊MOD1的角度,如何結合模塊

[html1.html] 
<html lang="en" ng-app="mod1"> 
... 
<script src="scripts/services/Data.js"></script> 

而且Data.jsMOD1

[Data.js] 
angular.module('mod1').factory('Data',[function(){ 
... 
}]); 
工廠

然後我與第二頁html2.html相同與模塊模2在那裏,我也想用同樣的工廠比以前

[html2.html] 
<html lang="en" ng-app="mod2"> 
... 
<script src="scripts/services/Data.js"></script> 
<script src="scripts/services/Train.js"></script> 

Train.jsMOD2一個工廠,然後結合MOD1MOD2我做的以下

[Train.js] 
var mod2 = angular.module('mod2',[angular.module('mod1')]); 
mod2.factory('Train',[function(){ 
... 
}]); 

但角度沒有找到模塊MOD1。我錯過了什麼?

*雙方html1.htmlhtml2.html是來自同一個電子主要應用

+0

等等。 mod1模塊在哪裏定義? – Phil

回答

1

模塊依賴name指定渲染器,所以在Train.js

angular.module('mod2', ['mod1']) 

你只需要包含定義爲mod1的文件,即具有的文件

angular.module('mod1', ['maybe', 'some', 'deps', 'here']) 

您將該文件包含在html2.html以及任何其他帶有提供程序的文件(如Data.js)中,並且該模塊中的所有內容都將可用。

想必您已經在Data.js或其他文件中定義了模塊mod1。再次定義它,就像您在Train.js中使用新的空白覆蓋已註冊的名稱。

+0

是的,就是這樣,謝謝! – Gerard