2013-02-21 56 views
0

我有兩個使用RequireJS的應用程序。一個人使用另一個作爲插件,如果你願意,可以使用各種模塊。插件/模塊已經使用r.js進行了優化。使用r.js優化項目,幷包含已優化的r.js模塊

當我在我的服務器上運行應用程序時,一切正常,在這種狀態下應用程序尚未優化,只有插件/模塊。

當我去通過r.js優化應用程序,包括我的插件/模塊r.js拋出一個錯誤,因爲它無法找到該插件/模塊的用途,但最終被當插件/模塊得到優化,捆綁文件。

那麼我該如何解決這個問題?我想我有以下選擇:

  1. 當我構建我的主應用程序時,我包含未優化的插件/模塊並一次優化它。
  2. 我將優化插件/模塊中的所有URL添加到配置中,並將它們指向:empty,但這會成爲一個球疼,因爲這些路徑是動態

那我還能做什麼?有沒有辦法告訴r.js要麼:

  1. 不要打擾在我優化的插件/模塊中尋找所需的路徑。
  2. 以某種方式編譯我的插件/手機,但刪除它的所有痕跡definerequire,從而使它自我包含,如果這是可能的。

回答

0

所以我通過將我的插件/模塊作爲依賴而不是應用程序的一部分來解決問題。

因爲爲您的應用程序配置主配置文件是一個好主意,所以我告訴r.js使用此方法,但後來將我的插件/模塊的URL僞造爲特殊的empty:值。

然後停止r.js試圖找到已優化的插件/模塊的所有依賴項,並允許我將它作爲依賴項包含在內;一切都很好。

相關問題