Я работаю над некоторыми проектами, связанными с Webpack, в которых мне нужно проанализировать все дерево модулей.
В настоящее время я иду вверх, используя свойство module.reasons
, в котором есть все модули, которые родители текущего модуля. Однако я не могу найти аналоговое свойство, содержащее дочерние модули.
Я основываю алгоритм обхода на классе Module
Webpack, потому что он должен быть в состоянии выполнить рекурсию для любого типа модуля. (Все экземпляры модулей любого другого класса, расширяющие Module
)
Во время тестирования я видел свойство module.dependencies
, но оно не определено в конструкторе Module
, и я не смог найти, как оно заполняется .
Есть идеи о том, как я могу пройти вниз? Есть ли какое-то другое свойство, которое мне не хватает? Или я должен получить доступ к дереву, используя другой интерфейс Webpack, а не непосредственно из Module
экземпляров?
ОБНОВЛЕНИЕ:
Я используя module.dependencies
, потому что я подтвердил, что так или иначе он присутствует на каждом модуле. Однако в нем перечислены только зависимости c (например: import {something} from 'some/module.js'
), но не динамические c (даже если разрешаемые), такие как (import('some/module.js')
). Любая помощь будет высоко ценится. Спасибо.