В этом руководстве вы узнаете, как создать новый пакет и опубликовать его в реестре npm.
Во-первых, вам нужно создать новую учетную запись, посетив страницу регистрации npmjs.com. Важная информация — это имя пользователя, пароль и общедоступная электронная почта. Эта информация понадобится вам при публикации пакета.
Затем вы создаете новый пакет, например, galaxy-lib
. В каталоге galaxy-lib
вы запускаете команду npm init --yes
, чтобы создать файл package.json
:
npm init --yes
Получив файл package.json
, вы можете создать новый модуль с именем index.js
, в котором есть простая функция, возвращающая количество галактик:
module.exports.count = function() { return 1000000; }
В-третьих, чтобы опубликовать пакет в npm из терминала, используйте команду npm login
:
npm login
Вам будет предложено ввести следующую информацию: username
, password
и email
.
Наконец, вы запускаете команду npm publish
, чтобы опубликовать пакет galaxy-lib
в реестре.
npm publish
Если вы получили сообщение об ошибке после выполнения команды npm publish
, вполне вероятно, что имя публикуемого вами пакета уже существует. В этом случае вам нужно изменить имя пакета в файле package.json
на что-то уникальное.
Использование опубликованного пакета
Чтобы использовать пакет galaxy-lib
, вы создаете новый проект Node с именем galaxy-demo
и запускаете команду npm init
:
npm init --yes
Чтобы установить опубликованный пакет galaxy-lib
, выполните команду npm install
:
npm install galaxy-lib
Следующее создает app.js
и использует пакет galaxy-lib
:
const galaxy = require('galaxy-lib'); console.log(galaxy.count());
Наконец, запустите программу app.js
с помощью следующей команды:
node app.js
Выход:
1000000
Отмена публикации вашего пакета
После того, как вы опубликуете пакет в реестре npm, другие могут использовать его. Поэтому отмена публикации пакета из реестра npm обычно считается нежелательной.
Если вы уверены в своих действиях, вы можете запустить команду npm unpublish
, чтобы отменить публикацию пакета:
npm unpublish [<@scope>/]<package_name>[@<version>]
Команда npm unpublish
удаляет версию пакета из реестра, удаляет его запись и архив.
Чтобы побудить других разработчиков не использовать пакет или обновлять версии, вы должны вместо этого использовать команду npm deprecate
:
npm deprecate <package_name>[@<version>] <deprecation_message>
Эта команда npm deprecate
обновляет реестр npm для пакета и выдает предупреждение об устаревании всем, кто пытается его установить.
Заключение
- Используйте команду
npm publish
, чтобы опубликовать свой пакет в реестре. - Не используйте команду npm unpublish для удаления опубликованного пакета из реестра npm.
- Используйте команду
npm deprecate
, чтобы объявить устаревшим опубликованный пакет.