2011-12-26 64 views
6

我已經看到許多變化加載模塊,但不支持AMD,我想知道什麼是這樣做的最佳做法。使用require.js作爲AMD模塊包含jQuery,Underscore和Backbone的最佳方式是什麼?

最後,我想編寫模塊是這樣的:

module.js: 

define(["jQuery", "Underscore", "Backbone"], function($, _, Backbone) { 
    ... module code here 
} 

但也有很多的問題,加載採用AMD的依賴,因爲他們是不是所有的AMD兼容。

+1

你是什麼意思的AMD?不是CPU系列,對吧? – Thilo 2011-12-26 09:02:14

+1

不是。異步模塊定義。我不得不承認TLA的選擇...... :) – 2011-12-26 09:02:41

+1

幾年前(我認爲在Intel開關之前),Mac的謠言小組對amd的代碼引用感到厭煩。那時候,它是自動掛載守護進程。 ;-) – Thilo 2011-12-26 09:06:19

回答

1

看一看this的例子。它很好地顯示瞭如何使用backbone和requirejs。它還展示瞭如何整潔地組織模型,查看和收集。

+0

看起來這個例子是一個更新的版本,而不是本教程在網站上的解釋。謝謝。 – 2011-12-26 14:12:51

2

托馬斯戴維斯有一個更好的例子(imo)在他未更新的例子中加載jquery/underscore/backbone。通過查看加載程序開始here

它使用RequireJS訂單插件找到here來同步加載模塊。

1

RequireJS的最新版本增加了使用非AMD JS文件的能力。

require.config({ 
    'paths': { 
    "underscore": "libs/underscore-min", 
     "backbone": "libs/backbone-min" 
    }, 
    'shim': 
    { 
     backbone: { 
      'deps': ['jquery', 'underscore'], 
      'exports': 'Backbone' 
     } 
    } 
}); 

試試看。

0

我不瞭解AMD的一件事是,它看起來像它加載必要的js只有當它需要,但隨着演示應用程序加載所有js html css文件,當你訪問應用程序的第一頁加載。

相關問題