我正在使用一些用於許多Web應用程序的庫。庫本身不使用RequireJS - 它是用節點編寫的,然後與browserify捆綁在一起 - 然而,它的一些依賴者正在使用RequireJS填充來包含庫。庫的依賴項中的匿名define()模塊導致庫的依賴項損壞
我們發現,如果我們的庫依賴於包含匿名定義模塊的庫,如我們的依賴項使用的RequireJS填充符打破了「不匹配的匿名define()」錯誤lodash來源:
// Define as an anonymous module so, through path mapping, it can be
// referenced as the "underscore" module.
define(function() {
return _;
});
我在這個問題上找到了RequireJS documentation;但是它的所有解決方案似乎都假設用匿名模塊導入庫的庫正在使用RequireJS,但這裏並不是這種情況。
我該如何處理這個問題,以便下游庫不需要做任何特殊處理以便要求我們的庫?理想情況下,如果我們不需要爲每個使用匿名模塊定義的庫添加自定義邏輯,那就好了。
雖然我沒有測試過,但我將其標記爲「最佳答案」。我找到了一個我剛剛發佈的替代解決方案; (儘管很醜陋),除非我們發現目前的解決方案存在問題,否則無需研究其他解決方案。但是我會假設這是更正確的方法,除非我另有說明。 – Retsam 2015-04-29 00:44:33