2015-01-07 45 views
1

我有一個關於動態獲取主模塊的路由和依賴關係的問題。我一直在研究這個問題已經超過3天了,並沒有找到滿意的答案。我發現了一些似乎很接近的東西,但這不是我要找的東西,我不想懶惰地加載我的模塊或只是設置動態路由。具有動態路由和動態依賴性的角度模塊化

所以我會嘗試儘可能清楚地解釋我的需求: 有一個名稱在我的項目中共享,包含一些可重用模塊的文件夾。我需要我的app.js通過拖放模塊和依賴項來實現路由而無需手動更改!

沒有人有解決方案嗎? 謝謝你的時間和幫助

回答

0

這段代碼可以解決你的動態模塊分辨率要求。 創建deps數組,然後將其傳遞給「define」方法(由requirejs註冊)。 將所有相關的依賴關係放在同一個文件夾中。對於每個模塊,您可以創建一個單獨的js文件。每次我需要一個新服務時,我都會爲該服務創建一個單獨的js文件,並將其放置到「服務」目錄,最後將新的服務名稱附加到依賴項數組中。並且新模塊已準備好使用。

(function() { 
 
    (function (deps) { 
 

 
     window.app.utils.appendPrefixToPaths(window.app.paths.services.out.get(), deps); 
 

 
     deps.unshift("2.services/directive"); 
 
     deps.unshift("2.services/view"); 
 
     deps.unshift("2.services/preference"); 
 
     deps.unshift("2.services/alert"); 
 
     deps.unshift("2.services/materialDataTable"); 
 
     deps.unshift("2.services/security"); 
 
     deps.unshift("2.services/theme"); 
 
     deps.unshift("1.directives/_"); 
 

 
     define(deps, function (obj) { 
 
      return obj; 
 
     }); 
 

 
    })(window.app.services.fileNames.get()); 
 
})();