Я работаю над проектом с Node.js, а код на стороне сервера становится настолько большим, что я хотел бы разделить его на несколько файлов. Похоже, что это было сделано на стороне клиента целую вечность, разработка выполняется путем вставки тега script
для каждого файла, и только для распространения это что-то вроде "Make", используемого для объединения всего. Я понимаю, что нет смысла конкатцировать весь серверный код, поэтому я не спрашиваю, как это сделать. Самая близкая вещь, которую я могу найти, - это require()
, но она не очень похожа на script
в браузере, поскольку файлы require'd не имеют общего пространства имен.
Посмотрев на несколько старых проектов Node.js, например Shooter, похоже, что это было когда-то не так, или я В моем коде отсутствует что-то действительно простое. Моим файлам require'd не удается получить доступ к глобальному пространству имен во время компиляции или времени выполнения. Есть ли простой способ обойти это или мы вынуждены сделать все наши требуемые JS файлы полностью автономными из области вызова?