что это значит под "debug = require ('debug') ('api: server')" - PullRequest
0 голосов
/ 23 января 2020

Я читал некоторый код проекта для изучения node.js, затем я нашел эту строку (debug = require('debug')('api:server')), заключенную в скобки. Поскольку я новичок в программировании и когда я не знаю что-то, я просто ищу это в сети, но я не мог найти ответ на этот вопрос. Если вы хотите сказать мне, чтобы искать в Интернете более агрессивно, то, пожалуйста, скажите мне КАК тоже.

1 Ответ

1 голос
/ 23 января 2020

require возвращает экспорт какого-либо другого модуля. Здесь, поскольку debug передается в require, требуется модуль debug. Этот модуль делает :

debug предоставляет функцию; просто передайте этой функции имя вашего модуля, и он вернет оформленную версию console.error, чтобы вы могли передавать отладочные операторы. Это позволит вам переключать выходные данные отладки для различных частей вашего модуля, а также для модуля в целом.

Итак

const debug = require('debug')('api:server');

, где require('debug') разрешается в функция имеет вид:

const debug = deccorateModule('api:server');

, где decorateModule выполняет функции, описанные выше. В этом случае require действует как функция высшего порядка: функция, которая возвращает функцию. (Возможно, у вас есть модуль с именем api:server)

В результате переменная debug содержит оформленную версию console.error.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...