Всем привет! В этом материале мы продолжим говорить о модулях и рассмотрим шаблоны модулей в NodeJS .

NodeJS. Шаблоны модулей.

Всем привет! В этом материале мы продолжим говорить о модулях и рассмотрим шаблоны модулей в NodeJS.

В прошлой статье мы выяснили, как сделать модуль и вернуть его. Однако, что делать, если у нас несколько модулей в одном файле? Например, файл для математических вычислений. Давайте рассмотрим, что делать в этом случае.

Создадим файл stuff.js, в главном файле app.js также поменяем название:

var stuff = require('./stuff');

Добавим новый модуль в наш файл stuff.js:

var adder = function(a, b) {
  return `Сумма двух чисел равна ${a+b}`;
};

var pi = 3.1415926535

Теперь мы хотим, чтобы все две функции, а также наша константа π были доступны в главном файле app.js.

Поскольку module.exports является всего лишь пустым объектом, мы можем сделать следующее:

module.exports.counter = counter;
module.exports.adder = adder;
module.exports.pi = pi;

Теперь в главном файле app.js мы можем вызывать нужные нам функции таким образом:

console.log(stuff.counter(['1 элемент', '2 элемент', '3 элемент']));
console.log(stuff.adder(7, 7));
console.log(stuff.adder(stuff.pi, 7)); // складываем константу π с цифрой 7

Это не единственный способ, с помощью которого мы можем экспортировать файлы. Можно, например, функции сразу записывать вот так:

module.exports.func = function() {   // код };

А можно делать так, как мы и делали, но записывать все в виде объекта:

module.exports = {
  counter: counter,
  adder: adder,
  pi: pi
};

А на этом у меня все. Спасибо за внимание!