Чтобы опубликовать библиотеку в NPM, мы должны сделать простые шаги:
- Создайте библиотеку, составьте ее.
- Измените версию, которую вы хотите опубликовать на пакете библиотеки.
- Запустить
NPM PublishВ папке вашей застроенной библиотеки
Это может быть выполнено вручную или может быть сделано на пару часов создания сценария, который выполняет работу для нас для автоматизации. Если мы думаем об этом, это относительно легко сделать, но давайте подумаем о некоторых соображениях 🤔:
- Что если у нас нет только одной библиотеки, а несколько, потому что мы используем моно-репо-подход?
- Что, если наша четвертая библиотека, и мы устали от написания/тестирования/поддержания того же самого снова и снова?
- Что если мы просто не хотим или не будем иметь время и терпение, чтобы сделать это 😅?
С ngx-deploy-npm Вы можете опубликовать любую библиотеку на своей рабочей области или NX с одной командой.
По любой Я имею в виду буквально любой вид публикабельной библиотеки, независимо от технологии, которую вы используете, Angular, React, Node или Nestjs 🚀.
Вам просто нужно иметь свою библиотеку на Угловой или Nx рабочая среда
Предположим, что у вас есть:
- Угловое или NX Workspace с опубликованной библиотекой
- Уже вошел в NPM, используя
npm login
Публикуйте свой пакет по:
| # Установить (сделано только один раз) nx. Сгенерировать ngx-deploy-npm: init # опубликовать nx развернуть свой библиотек | # Установите (сделано только один раз) ng Добавить ngx-deploy-npm # опубликовать Ng развернуть свой библиотек |
До- шаги
- Иметь рабочее пространство, угловое или NX (оно не будет слишком сильно изменять между ними)
- Иметь опубликованную библиотеку в своей рабочей области
- Уже войти в NPM,
npm login
Независимо от того, в каком рабочем пространстве вы должны сделать Установка строителя (сделанного только один раз), а затем вы можете выполнить его в публиковать Ваша библиотека в то время, которое вы хотите.
Угловой 🅰
Угловая установка
Во -первых, нам нужно добавить этот строитель в нашу рабочую область, это может быть сделано просто
ng add ngx-deploy-npm
Это обнаружит все наши библиотеки и изменит ваши Angular.json Файл в «Установить» этот строитель. Вы заметите архитектора развернуть был добавлен во все наши библиотеки в нашем рабочем пространстве, это будет выглядеть так:
"deploy": {
"builder": "ngx-deploy-npm:deploy",
"options": {
"access": "public",
"buildTarget": "production"
}
}
Это вся конфигурация, необходимая для публикации пакета в NPM, теперь осталось развертывание 🚀
Угловая публикация
ng deploy YOUR-LIBRARY-NAME
И сделано, ваша библиотека опубликована в NPM 😊
Nx 🐬
С рабочей пространством NX процедура не так сильно меняется, вы должны «Установить» Сначала он опубликует время, которое вы хотите.
NX Установка
Это не так сильно меняется с Угловая установка Анкет Это требует того же эффекта и имеет ту же цель, вроде «Установить» Строитель в вашем рабочем пространстве NX, обнаружив все ваши публикуемые библиотеки (библиотеки, которые мы создали как таковые) и добавили соответствующий архитектор развернуть всем из них. Это может быть сделано:
nx generate ngx-deploy-npm:init
NX Publishing
nx deploy YOUR-LIBRARY-NAME
И сделано, ваша библиотека опубликована в NPM 😊
Это обертка NPM Publish Таким образом, все параметры доступны с тем же именем.
-Паксаж-версия
Вы можете установить будущую версию вашей библиотеки, просто используя аргумент -Пэкаге-версия , это напишет версию, которую вы передали на package.json . Действительно удобно, когда у вас есть шаблон версий в вашем рабочем пространстве.
-Build-Target
С помощью этого параметра вы можете выбрать, какую среду для создания вашей библиотеки. Действительно удобно для угловых библиотек, которые из -за Айви у них есть производственная среда.
—сухой -бежать
Не выполнит никаких операций, просто чтобы посмотреть, как это пойдет. Очень удобно тестировать и визуализировать, не выполняя никаких действий.
Этот строитель — обертка NPM Publish Так что, просто имея хорошо настроенный .npmrc Файл Вы можете публиковать свои пакеты в любом месте. Если у вас есть .npmrc Файл, указывающий на частное хранилище NPM ngx-deploy-npm Опубликует там свои библиотеки плавно.
- 🎉
ngx-deploy-npmссылается на угловую официальную документацию по Автоматическое развертывание с CLI раздел вместе с другими строителями. - 🎉
ngx-deploy-npmтакже ссылается на NX плагины официальная страница.
ngx-deploy-npm это инструмент, который помогает нам публиковать какие -либо библиотеки в NPM только одной командой, если у нас есть наши библиотеки в угловом или NX Workspace. Это помогает нам автоматизировать процесс публикации наших библиотек, что делает это действительно простым
Оригинал: «https://dev.to/dianjuar/publish-your-libraries-to-npm-with-one-command-angular-and-nx-4lao»