RequireJS, как решить проблему с зависимыми модулями?

Итак, есть схематически код:
//RequireJS 2.1.14
 
define('UI', ['API'], function (API) { // файл UI.js
        //API - object
});
define('API', ['UI'], function (UI) { // файл API.js
        //UI - undefined
});
 
require(['UI', 'API'], function(UI, API) {}); // вызываем все из файла min.'s


Из примера есть попытка использования связных друг с другом модулей, однако в модуле API, модуль UI будет не определен. Из за того что RequireJS подгружает либы в порядке указанном в require(['UI', 'API'].
Есть ли способ побороть эту проблему?
  • Вопрос задан
  • 2435 просмотров
Решения вопроса 1
Fr3nzy
@Fr3nzy
У вас проблема в том, что оба модуля зависят друг от друга.
Вообще, это не совсем правильно (архитектурно).

Посмотрите этот вопрос на Stackoverflow
stackoverflow.com/questions/4881059/how-to-handle-...
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
AMar4enko
@AMar4enko
@Fr3nzy правильно заметил, что существование подобной зависимости чаще всего указывает на плохую архитектуру. Та или иначе в руководстве RequireJS есть такой вот раздел requirejs.org/docs/api.html#circular
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы