2012-11-29 19 views
0

我正在構建具有多個離散客戶端應用程序的大型應用程序。我使用Backbone.js來管理結構和Require.js來管理依賴關係。嵌套應用程序特定的Backbone.js資產在常見問題下是否存在任何問題?

這裏是我想模擬的東西,這樣我就可以有可供使用的公共功能,這些應用程序:

-- libs 
-- models 
-- collections 
-- templates 
-- views 
-- apps 
    -- app_one 
    -- libs 
    -- models 
    -- collections 
    -- templates 
    -- views  
    -- app_two 
    -- libs 
    -- models 
    -- collections 
    -- templates 
    -- views 
main.js 

我很好奇,想知道是否有人做過類似的事,並在那裏我不考慮這個設計的任何明顯的缺陷。

我看到的主要好處是,我可以將常用庫,模型,集合,模板和視圖組織在結構的根目錄中,並且任何子應用程序都可以根據需要或定義應用程序特定資產在他們自己的嵌套結構中。

回答

1

你甚至不需要用requirejs來嵌套任何東西。 您的主lib可以存放在自己的文件夾中,不同應用程序可以在硬盤上的任何位置擁有自己的文件夾。唯一的問題在於你可以使用requirejs和其他方法調用所有的依賴,或者不使用r.js將不同的應用程序捆綁到一個文件中。

0

這是有道理的,是大多數人如何做,我會想。

我通常不同於我不分開模型/集合&意見。相反,我有一個「模塊」的目錄。一個模塊通常由一個或多個模型的單個文件,相關的集合和視圖組成。

另外請注意,您可能最終會在lib文件夾中有多個版本的jQuery說,因爲您可能有時間更新一個應用程序而不是另一個。

雖然require.js確實使您的結構無關緊要,但將代碼組織起來仍然是一個好主意。