2013-06-05 22 views
0

我是RequireJS的新手,只需完成以下配置代碼;在RequireJS中使用「shim」

({ 
    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" 
     } 
    ] 
}) 

我不明白什麼是「填充」用於? 有人可以請簡單地解釋我。

回答

2

您可以使用shim config定義非模塊化舊腳本。非模塊化是指那些不使用define()聲明依賴關係的腳本。因此,在上面示例中的shim配置中,您提到加載下劃線並將其導出爲'_',這意味着加載下劃線時,它可以在應用程序中使用_訪問。對於骨幹網來說,它意味着在加載骨幹網之前,shim應該確保在骨幹網之前加載下劃線和jquery。因爲下劃線和jQuery是主幹的依賴關係,所以shim正在幫助管理非模塊化腳本的依賴關係。在您的應用程序中加載骨幹網導出爲「Backbone」後。

相關問題