2014-01-04 3 views
2

В bluebird node module есть две сборки, обычная сборка и сборка синхронизации.NodeJS требует модуля с путём

Нормальная сборка, требуемая require('bluebird'), и сборка синхронизации, которая требуется require('bluebird/zalgo'). Как это делается? Это путь, но для номенклатурного пакета?

ответ

3

После того, как вы npm install, загляните в ваш каталог node_modules.

Вы увидите, что под bluebird есть zalgo.js, который является файлом, используемым при выполнении require('bluebird/zalgo').

Этот файл имеет только одну строку

module.exports = require('./js/zalgo/bluebird.js'); 

и вы можете найти эти файлы в вашем node_modules/bluebird дерево файлов также.

Вы можете взглянуть на документы узла, чтобы узнать, как именно узел разрешает аргументы require. Поскольку ваш путь не начинается с '.', он будет выглядеть в node_modules (или в глобальном местоположении) и найти bluebird. Затем он разрешит остальную часть пути.

Существует, конечно, больше, и документы расскажут полную историю, но это должно вас начать.

Смежные вопросы