我們有一個大型Web項目,我們需要可以相互交流的組件,這些組件可以放在不同項目的組件中央存儲庫中。 使用reuirejs和Backbone進行模塊化開發。通過骨幹和requirejs的不同樣板,但沒有符合我的要求。所以我創建了以下目錄結構。它可以解釋如下。用於基於組件的大型Web項目的Backbone-RequireJs樣板文件
---resources
|---custom-components
|---mycomponent
|---js
|---views
|---models
|---collections
|---css
|---templates
|---mycomponent.js
|---mycomponent2
|---js
|---views
|---models
|---collections
|---css
|---templates
|---mycomponent2.js
|---libraries
|---backbone
|---underscore
|---jquery
|---jquery-ui
|---jqueryplugins
|---jcarouselite
|---thirdpartyplugins
|---page-js
|---mypage.js
|---mypage2.js
- 資源目錄將包含的所有資源。在那之下,我們將會提到4個目錄。
- 圖書館,jqueryplugins和thirdpartyplugins都是他們所說的名字的目錄。
- page-js目錄將包含實際的main-js,它們將在我們的html文件中用作requirejs data-main屬性。
- 定製組件是我們創建的所有組件都將駐留的位置,因爲您可以看到它具有與組件相同名稱的js文件,該文件將作爲此構件的入口點。這個目錄也有js,css和模板的目錄。 CSS和模板將分別通過文本插件和CSS插件加載。 Js目錄將包含使這個小部件工作的所有主幹代碼。
自定義組件將被駐留在page-js中的main-js詢問。
即將到達我需要的東西。
1.我想讓專家從大型網站項目的角度審視這個目錄結構,您需要與其他團隊共享您的小部件。歡迎提出建議。
2.我的每個定製組件都將定義一個模塊,它將在包結構以及外部包結構中具有依賴關係。我想知道,是否有任何方法可以使用r.js來優化封裝結構中的自定義窗口小部件依賴項,並讓插件和庫分別進行優化。
3.我正在開發單頁面ajax應用程序,所以我會問需求模塊,所以我需要清理模塊和小部件,當我不需要它們時,是否有任何清理方法我應該知道?
你檢查'骨幹-aura'(http://addyosmani.github.com/backbone-aura/)由阿迪·奧斯馬尼,基於文檔和您的要求,它可能會幫助您生成所需的體系結構 – dhaval
在詢問此問題之前,我確實偶然發現了這一問題,但沒有找到您指定的鏈接。感謝您的鏈接。我研究了這一點,它解決了我的一個問題,清理。它還增加了一個pub/sub架構的更多令人興奮的功能。但是我的查詢2仍然存在,是否有一種方法來優化我的小部件。 – Vishwanath
can's你可以使用'exclude'選項來避免因外部或不需要的依賴關係而優化 – dhaval