2012-06-07 26 views
0

我希望通過RequireJS 2 +的Shim加載jquery,jqueryUI,下劃線&骨幹和非AMD jquery插件,然後動態加載JS進行某些視圖。我可以優化一組JS(結合到一個),並仍然動態加載某些模塊w/requireJS?

所以不是一切結合爲1個大的JS文件,可我......

  • 選擇性結合的東西作爲1大JS
  • 別的東西作爲另一大JS(另一個複雜的視圖),和
  • 剩下的東西未組合(對於certiain部件)(可能只是壓縮)?

這可能嗎?附:我應該何時考慮使用Almond

謝謝。

回答

0

簡短回答:是的。

長:

您基本上可以包括任何你想要的任何方式通緝。您可能會遇到的唯一問題是AMD定義的庫的範圍在定義「處理程序」函數中是本地的。據我所知,至少。

所以我覺得這是像這樣:

define([somefile], function(something){ something == 'stuff from somefile.js'; }); 
somefile == undefined 

你可以做的,雖然是:

<script etc..."backbone.js"</script> 
define([somefile], function(something){ 
    window.something == 'stuff from somefile.js'; 
    Backone is defined. 
}); 
window.somefile == 'stuff from somefile.js'; 

所以這是可能的,但你必須設置變量從內部定義代碼到全局代碼,例如window.etc。

我想你可以在高性能的情況下使用杏仁。至少根據他們的網站。你可以在jsperf.om上寫一些測試代碼。

相關問題