Я создаю службу, которая фрагментирована по нескольким модулям, которые необходимы, когда это необходимо. Мне нужно получить доступ к переменной «запрос» от маршрутизатора во всех моих модулях.Передача переменных во все модули
Моего текущее решения (которое было предложено в других потоках для передачи переменных в целом), чтобы передать его каждый требуемый модуль:
вар a_module = требуется («./ a_module») (Req) ;
и экспорт каждого модуля в функции:
module.exports = функция (REQ) { ... }
Но это многословным и включает в себя необходимости экспортировать мой модули как функции и только имеющие доступ к этой переменной в объеме экспортируемых функций. В идеале я хотел бы иметь доступ к переменной во всем требуемом модуле.
Есть ли другой элегантный способ сделать это, что мне не хватает? Как объявление переменной req как глобальной для всего приложения?
Вы используете Express или просто NodeJS? –
Да Я нахожусь Экспресс – gwendall
Узел обрабатывает несколько запросов асинхронно в том же процессе, в отличие от PHP. Если вы установите 'req' в качестве глобального и обрабатываете несколько запросов одновременно, тогда' req' будет сбиваться, поэтому я не думаю, что вы должны использовать глобальные переменные, за исключением случаев, когда они являются постоянными и универсальными. –