Можно ли с помощью npm установить все зависимости «зонтичной зависимости», то есть иметь зависимости, транзитивно каскадно возвращающиеся к требуемому модулю?
Сценарий:
./lib:
package.json: dependencies {foo, bar}
./app
package.json: dependencies: {file:../lib}
Итак,из app
я хочу иметь возможность использовать модули foo
и bar
, которые в свою очередь являются зависимостями lib
, что равно зависимости app
.
Тем не менее, после выполнения npm install
на вышеприведенном, я неудивительно, что у меня будет только
./app/node_modules/lib/node_modules/foo
./app/node_modules/lib/node_modules/bar
Это не позволяет app
требовать foo
или bar
, так как они только субзависимости.
Один из моих вариантов использования - тестирование лямбда-кода AWS с использованием слоев локально. Если моя лямбда-функция использует слои A и BI, я хочу установить devDependency на file:layers/A
и file:layers/B
, а затем иметь доступ к модулям, требуемым слоями. В настоящее время я вместо этого вынужден включать все зависимости A и B как devDependencies, так как я не могу получить их в «каскад». При развертывании моей лямбды AWS будет сортировать все модули в моих слоях по пути к моему node_modules, но это не помогает при локальном запуске. Я, вероятно, могу решить эту проблему с помощью SAM, но в любом случае меня интересует решение на основе npm для других целей, лямбда-сценарий был в основном для иллюстрации.
В основном я ищу флаг для зависимости, включающейвсе его зависимости вместе с самим собой возвращаются в вызывающий пакет. В качестве альтернативы я ищу способ поиска узлов для модулей как в ./node_modules
, так и в пользовательском каталоге (например, ./node_modules/lib/node_modules
.
Возможно ли это?