У меня есть пакет React Native, в котором есть некоторые общие компоненты, которые будут использоваться другими пакетами. Этот пакет также имеет зависимость от node_module, который динамически создается во время сборки (эта зависимость используется для предоставления переведенного текста по всему пакету, и он создается автоматически на основе переводов, доступных ему во время сборки).
У меня вопрос - поскольку мой пакет зависит от этого автоматически сгенерированного node_module, когда я пытаюсь собрать и использовать свой пакет из другого пакета, он терпит неудачу, поскольку не может разрешить эту зависимость, поскольку он не упакован с этим. Итак, как я могу заставить его скопировать эту динамическую c зависимость node_module в выходной каталог node_modules, когда пакет собран и опубликован?
Все эти пакеты являются внутренними пакетами, поэтому я не могу поделиться источником, но в основном это будет примерно так:
- SharedComponents - содержит различные компоненты (счетчик, кнопка, карусель, ...), которые используются другими приложениями.
- Application1 - Некоторое приложение, которое использует пакет SharedComponents или зависит от него.
- Application2 - Другое приложение, которое зависит от SharedComponents.
Теперь внутри SharedComponents есть зависимость, которая динамически создает файлы перевода текста, когда пакет построен из gulp и создает новый модуль Dynami c node_module, который используется этим пакетом. Я не могу изменить эту архитектуру, так как не владею ею.
Я пытаюсь сделать так, чтобы каталог node_modules опубликованного пакета содержал этот динамический c node_module.
Я пробовал установить свойство files
пакета. json содержать node_modules/text-translator
, но это не сработало, потому что, согласно документации NPM для свойства файлов ( ссылка ), он будет игнорировать все указанное в node_modules независимо от того, что находится в файлах.
Я также пробовал использовать bundledDependencies , но это тоже не сработало, поскольку это не опубликованный модуль, поэтому он не смог найти его в нашем NPM репозиторий.
Кто-нибудь знает, что делать в этом случае? Возможно, я мог бы настроить задачу NPM для копирования поверх node_modules / text-translator, возможно, во время шага prepack
(или есть лучший шаг, который имел бы доступ к существующему каталогу node_modules)? Но есть ли лучший способ сделать это?