как настроить проект для разработки в пакете npm

#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 
 

Таким образом, вы можете использовать один и тот же синтаксис импорта, но вы можете разрабатывать локально в обоих проектах одновременно без необходимости публикации каждого изменения.