2013-06-05 122 views
2

我過去開發了基於JavaScript的Web應用程序,現在正在嘗試瞭解RequireJS。 幾乎所有的Web應用程序都有頁面,這些頁面需要一些常見的JS和一些頁面特定的JS。我想使用RequireJS來組織整個Web應用程序。 所以我的問題是我們可以使用RequireJS來做同樣的事情。如果是的話,JS的分手究竟是如何完成的? 假設我有一個app.build.js,如下所示;RequireJS與多個模塊

({ 
    appDir: "../", 
    baseUrl: "js", 
    dir: "../../appdirectory-build", 
    paths: { 
     jquery: 'libs/jquery/jquery-1.8.2', 
     underscore: 'libs/underscore/underscore-1.4.4', 
     backbone: 'libs/backbone/backbone-0.9.10', 
     templates: '../templates', 
     app: 'app' 
    }, 

    shim: { 
     underscore: { 
     exports: '_' 
     }, 
     backbone: { 
     deps: ["underscore", "jquery"], 
     exports: "Backbone" 
     } 
    }, 
    modules: [ 
     { 
      name: "main" 
     } 
    ] 
}) 

我們可以在這裏定義多個「模塊」(比如我們有'main')。請提供更多細節。 也要求JS據說是AMD。那麼到底什麼是異步呢? 謝謝。

+0

AMD的異步特性可以通過查看加載你的應用程序時,什麼要求RequireJS使得待觀察。您會看到它會執行多個請求,並且只會在其所有依賴關係都被加載後繼續執行模塊的代碼。這些依賴關係的實際加載是異步完成的。 –

回答

0

在過去的幾個月中,我已經將幾個示例Mimosa構建的應用程序捆綁在一起用於應用程序中的許多模塊。

這其中有嵌套的主要模塊,內置3檔乾脆:https://github.com/dbashford/MimosaNestedMains

這是一個相當簡單的例子,但你可以看到一個人怎麼能部分他們的應用程序成小塊,分別生成各個。要查看Mimosa構建和使用的r.js運行配置,請運行mimosa build -oD。這會將調試日誌發送到控制檯,幷包含每個文件的r.js配置。

入門含羞草:http://mimosajs.com/started.html