Скажем, у меня есть 3 модулей с зависимостями, как так:Возможно ли доступ к * загруженным * дочерним элементам модуля nodejs?
A.js
var b = require('./B');
var c = require('./C');
console.log(module.children.length); // 2
B.js
var z = require('Z');
console.log(module.children.length); // 1
C.js
var z = require('Z');
console.log(module.children.length); // 0 ?!?!
Z
не в module.children
внутри C
be потому что он уже был загружен B
до того, как был выполнен C
.
Я могу понять module.parent
из Z
будучи B
, потому что это первое место, он был загружен, но, безусловно, Z
может быть ребенком как B
и C
?
В любом случае, мой вопрос: можно ли увидеть все детей модуля, независимо от того, были ли они загружены или нет?
Хорошая идея .. но я могу только изменить файл верхнего уровня (думаю: что-то с 'var a = require ('./ A')') .. Я пытаюсь создать инструмент, который отображает зависимости по рекурсивно просматривая 'module.children' –
Хорошая идея, звучит многообещающе :). Ну, как вы обращаетесь к детскому модулю? Можете ли вы очистить кеш, прежде чем обращаться к нему? –
Я создаю один файл сценария, который принимает имя файла в качестве командной строки arg, 'require' этот файл, а затем смотрит на свой собственный 'module.children' - единственный элемент, который был загружен' module'. Затем перезапустите 'module.children', сбрасывая некоторую информацию на консоль. Или, вот цель .. –