2014-10-20 32 views
0

我有一個角度的應用程序,並在其中我可以看到這個咖啡app.coffee文件....將模塊插入其他模塊用於DI用途的角度有什麼條件?

app = angular.module 'app', [ 
    'ngRoute', 
    'ngResource', 
    'ui.router', 
    'app.filters', 
    'app.services', 
    'app.directives', 
    'app.controllers', 
    'app.templates', 
] 

angular.module('app.services', ['ngResource']) 
angular.module('app.controllers',[]) 
angular.module('app.directives', []) 
angular.module('app.filters', []) 
angular.module('app.templates', []) 
angular.module('app.models', []) 

我真的不明白,爲什麼我不得不注入ngResource應用服務模塊直接AND進入應用模塊。當然,我可以將所有依賴關係連接到應用程序模塊,然後它將允許全局訪問其餘的模塊?

回答

1

當你寫

app = angular.module 'app', [ 'ngRoute', 'ngResource', 'ui.router', 'app.filters', 'app.services', 'app.directives', 'app.controllers', 'app.templates', ] 這意味着這些都是你app的依賴關係。

當你寫

angular.module('app.services', ['ngResource'])

這意味着app.services具有相關ngResource。關於你爲什麼需要重新編寫它的問題。這很簡單,app.services使用ngResource。如果你不希望整個應用程序有ngResouce依賴,你可以在第一行忽略它,但它必須在那裏app.services

你可以閱讀更多關於它here

+0

所以我把它 angular.module('app.services',['ngResource']) line,仍然可以在我的app.services模塊中訪問它嗎? – Exitos 2014-10-20 10:59:58

+0

只有當另一個模塊沒有這種依賴性。 – 2014-10-20 11:02:50

+0

很抱歉,如果我希望應用程序能夠訪問整個應用程序,那麼它就會進入「應用程序」,因此我永遠不需要將它放在app.services中,但是如果我想在app.services中使用它,它在那裏。如果是這樣的話,那麼在兩個地方都沒有用。我可能只是在'應用'中擁有它,因爲我的整個應用都需要它。是對的嗎? – Exitos 2014-10-20 11:12:08