У меня есть предлагаемое решение для этого в моем проекте require-lazy.
Он совершает что-то немного иначе, чем то, что вы спрашиваете хотя: Он разбивает приложение на ленивые нагруженные модули, как простые (с точки зрения разработчика) в письменной форме (обратите внимание на использование в lazy!
плагина):
define(["eager-module", "lazy!lazy-module"], function(eager, lazy) {...})
А затем использовать его с помощью обещания:
lazy.get().then(function(real_module) {...});
lazy-module
будет загружен один раз, первый раз .get()
это вызов редактор
В приведенном выше примере процесс сборки создаст 2 js-файла: On, содержащий основной модуль, eager-module
и все их зависимости. И один, содержащий lazy-module
и все его зависимости, которые не были включены в предыдущий файл/комплект.
В требовательном проекте есть несколько примеров, которые очень просты в настройке, вам требуется только Node.js.
Если файлы поставщика являются просто JS, то предоставляют ли они сокращенную версию? Если это так, просто соедините их и используйте r.js отдельно для своих модулей. –
Мне нужно, чтобы эти библиотеки были внутри модулей, поэтому, если бы у меня было r.js игнорировать их во время сборки, как нужно знать, что они были загружены? – silkAdmin
Не знаете, почему это проголосовало, если я чего-то не хватает, поделитесь некоторыми соображениями. – silkAdmin