Загружать зависимость от всех файлов?

у меня есть функция для logs в файле ./util/logger.js , этот файл экспортирует функцию и я делаю один

const Logger = require('../util/logger.js');

в каждом файле, чтобы мочь использовать ее: Как я могу загружать эту функцию глобальной формы во всем моем app, чтобы не быть должным делать один require в каждом файле?

Может быть смогите определять ее в package.json, но не как,

Спасибо за Ваше время.

1
задан 06.03.2019, 17:33
1 ответ

Это очень просто: в браузере, существует глобальная переменная window, доступная со всех частей Â: правда?

, Так как в node у нас есть переменная global:

// index.js

global.cucu = function( ) {
  console.log( 'cucu' );
}

const otro = require( './otro.js' );

otro.run( );


// otro.js

module.exports = {
  run: function( ) {
    cucu( );
  }
};

Сейчас, если мы выполняем node index.js, мы получаем вывод...

кукование

, Поскольку мы видим, cucu( ) было доступно с файла otro.js, без необходимости делать ningún require( ).

Нужно быть осторожно с именами, которые мы используем... global, - действительно, глобальные , а следовательно возможный require( 'algo' ) может разбивать наша переменная с другой стоимостью. Или мы разбивать уже присутствующая переменная, которых node размещает автоматически ahà - (например, global.console.log).

1
ответ дан 19.11.2019, 22:31