Общие библиотеки
Общий код ChurchApps публикуется в npm под областью @churchapps/*. Эти пакеты предоставляют общие утилиты, серверные хелперы и React-компоненты, которые потребляются всеми проектами ChurchApps как обычные npm-зависимости.
Пакеты
| Пакет | Описание | Используется |
|---|---|---|
@churchapps/helpers | Базовые утилиты (DateHelper, ApiHelper и др.) | Все проекты |
@churchapps/apihelper | Серверные утилиты Express.js | Все API |
@churchapps/apphelper | Общие React-компоненты и утилиты | Все веб-приложения |
Локальная разработка с npm link
При разработке общей библиотеки одновременно с потребляющим проектом используйте npm link для тестирования изменений без публикации в npm:
# Сборка и связывание библиотеки
cd Helpers && npm run build && npm link
# Связывание в потребляющем проекте
cd ../Api && npm link @churchapps/helpers
Это создаёт символическую ссылку из node_modules/@churchapps/helpers потребляющего проекта на ваш локальный вывод сборки, поэтому изменения отражаются сразу после пересборки.
Не забывайте запускать npm run build в проекте библиотеки после внесения изменений -- потребляющий проект читает из скомпилированной папки dist/, а не из исходного кода.
Связи npm link сбрасываются при запуске npm install в потребляющем проекте. Вам нужно будет повторно выполнить команду npm link @churchapps/<package> после установки зависимостей.