#javascript #node.js #npm #yarnpkg
#javascript #node.js #npm #yarnpkg
Вопрос:
У меня есть корневой проект git, в котором я использую внутри своего корневого проекта подпроект git. Так, например, у меня есть проект MyApp и подпроект UIComponents. В настоящее время я клонировал репозиторий UIComponents в свою папку проекта и добавил UIComponents в .gitignore корневого проекта. Теперь я хочу создать пакет npm для UIComponents, и я хочу иметь возможность переключаться между сборкой и разработкой npm. Проблема в разработке, импорт заключается в следующем:
import Button from './UIComponents'
и с пакетом npm импорт заключается в следующем:
import Button from '@my_name/UIComponents'
Я не хочу каждый раз корректировать импорт.
Первая мысль, которая приходит на ум, — разработать UIComponents внутри папки node_modules, но это, похоже, не очень хорошее решение.
Ответ №1:
Для решения этой проблемы попробуйте использовать npm link. Поэтому вместо того, чтобы клонировать его в подкаталог, который необходимо добавить в gitignore, просто проверьте репозиторий за пределами вашего проекта, а затем свяжите его.
Пример:
cd ~/projects/UIComponents
npm link
cd ~/projects/MyApp
npm link @my_name/UIComponents
Таким образом, вы можете использовать один и тот же синтаксис импорта, но вы можете разрабатывать локально в обоих проектах одновременно без необходимости публикации каждого изменения.