Я изучал, как различные концепции модулей могут применяться в NodeJS и приложениях браузера с использованием требований NodeJS (очевидно, в приложениях NodeJS) и RequireJS для среды веб-браузера.
Затем меня осенило, что некоторые модули могут быть полезны для использования как клиентскими, так и серверными приложениями и, следовательно, могут использоваться повторно.
Как можно разработать модули, чтобы они были совместимы с обеими этими средами?
Один является синхронным, а другой - асинхронным. Моей первой мыслью было использовать асинхронный синтаксис, а затем определить собственный модуль для NodeJS, который просто синхронно вызывает асинхронный обратный вызов. Но как включить RequireJS-эмулятор в модуль кросс-среды без предварительного синхронного обратного вызова NodeJS?