Содержание
Использование установленного пакета npm
Использование файла «package.json»
Идея версионирования: патчи, минорные и мажорные версии
Установка пакета npm глобально
Обновление глобальных пакетов npm
Удаление глобальных пакетов npm
Скачивание и установка npm
Для начала нам нужно установить Node.js, npm идёт вместе с ним. Затем нужно обновить версию npm, так как он обновляется несколько чаще, чем Node.js:
1 |
npm install npm@latest -g |
Проверить версию npm можно командой:
1 |
npm -v |
У меня вывело 4.5.0.
Установка пакетов npm
Существует два способа установки пакетов npm: локально и глобально.
Если вы хотите использовать пакет из своего модуля с помощью чего-нибудь вроде require от Node.js, то вам нужно установить пакет локально командой:
1 |
npm install <имя_пакета> |
Эта команда создаст каталог «node_modules» в текущем рабочем каталоге и скачает туда указанный пакет.
Для проверки этой команды вы можете выполнить:
1 |
npm install lodash |
Затем проверьте, что у вас появился каталог «node_modules» с подкаталогом «lodash».
Если у вас не было файла «package.json» в текущем каталоге, то устанавливается последняя версия, если же файл «package.json» присутствует, то устанавливается последняя версия, удовлетворяющая правилам в этом файле.
Использование установленного пакета npm
После появления пакета в каталоге «node_modules» вы можете его использовать. Например, если вы создаёте модуль Node.js, то вы можете подключить и использовать его так:
1 2 3 4 5 |
// index.js var lodash = require('lodash'); var output = lodash.without([1, 2, 3], 1); console.log(output); |
Запуск:
1 |
node index.js |
Использование файла «package.json»
Лучший способ управления локально установленными пакетами — это использование файла «package.json», который должен иметь как минимум name и version.
Поле name должно состоять из строчных букв английского алфавита, подчёркиваний и тире. Оно определяет имя вашего модуля.
Поле version определяет версию в формате x.x.x.
Пример:
1 2 3 4 |
{ "name": "my-awesome-package", "version": "1.0.0" } |
Создать «package.json» можно командой с консоли:
1 |
npm init |
Эта команда проведёт вас через процесс создания «package.json» в стиле вопрос-ответ.
Зависимости от других пакетов
Для указания зависимости от других пакетов используются поля dependencies и devDependencies в «package.json», которые указывают зависимости для production среды и development соответственно. Для добавления зависимостей проще использовать флаги --save и --save-dev у npm install, которые сохраняют зависимость в «package.json» для production и development среды.
1 |
npm install <имя_пакета> --save |
1 |
npm install <имя_пакета> --save-dev |
Пример «package.json» с зависимостями:
1 2 3 4 5 6 7 8 9 10 |
{ "name": "my_package", "version": "1.0.0", "dependencies": { "my_dep": "^1.0.0" }, "devDependencies" : { "my_test_framework": "^3.1.0" } } |
Идея версионирования: патчи, минорные и мажорные версии
Идея использования трёх чисел, разделённых точками, в качестве версии состоит в следующем (например, если текущий пакет 1.0.0):
- Патчи или исправления ошибок и незначительные изменения увеличивают последнее число (1.0.1).
- Минорные версии. Новые возможности, которые не ломают старый код увеличивают второе число (1.1.0).
- Мажорные версии. Изменения, ломающие совместимость со старым кодом увеличивают самое первое число (2.0.0).
При указании необходимой версии зависимости в «package.json» можно указывать диапазоны:
- 1.0, 1.0.x или ~1.0.4 будет использовать последнюю версию патча с исправлениями ошибок (для третьего варианта начиная с версии 1.0.4).
- 1, 1.x или ^1.0.4 будет использовать последнюю минорную версию.
- * или x всегда будет использовать последнюю версию.
Обновление зависимостей
Для обновления зависимостей в соответствии с правилами в файле «package.json» используйте команду:
1 |
npm update |
Удаление зависимостей
Для удаления зависимости из каталога «node_modules» используйте команду:
1 |
npm uninstall <имя_пакета> |
Для удаления зависимости из файла «package.json» используйте:
1 |
npm uninstall --save <имя_пакета> |
и
1 |
npm uninstall --save-dev <имя_пакета> |
Установка пакета npm глобально
Устанавливайте пакет глобально, если вы хотите его использовать как самостоятельную утилиту с командной строки:
1 |
npm install -g <имя_пакета> |
Если вы получите ошибку EACCESS, то это значит, что у вас нет прав на изменение каталога, который npm использует для глобальных пакетов.
В этом случае вам нужно сделать одно из следующих:
1. Изменить права доступа к каталогу, который npm использует по умолчанию.
2. Изменить каталог по умолчанию для npm.
3. Установить node c помощью пакетного менеджера.
Обновление глобальных пакетов npm
Для обновления пакетов npm, установленных глобально, используйте команду:
1 |
npm update -g <имя_пакета> |
Удаление глобальных пакетов npm
Для удаления пакетов npm, установленных глобально, используйте команду:
1 |
npm uninstall -g <имя_пакета> |
Публикация пакета npm
Для начала вам нужно создать пользователя в репозитории npm:
1 |
npm adduser |
Если же у вас уже есть пользователь, созданный на сайте, то можете сохранить его логин и пароль:
1 |
npm login |
Для публикации пакета используйте команду:
1 |
npm publish |
Имейте в виду, что опубликовано будет всё, что не добавлено в игнорируемые в «.gitignore» или «.npmignore».
Перейдите на https://npmjs.com/package/<package>. Вы должны увидеть информацию о вашем пакете.
Для обновления версии используйте одну из команд:
1 |
npm update patch |
или
1 |
npm update minor |
или
1 |
npm update major |
А затем опубликуйте его снова:
1 |
npm publish |
Приветствую Вас, Автор курса по NPM. Всё написано более чем доступно и понятно. Не раскрыт лишь 1 очень важный вопрос, за чем я и обратился к Вашему курсу — как удалить опубликованный пакет.
Полагаю, что вот так:
Но поосторожнее с этим. Я бы не удалял уже опубликованные версии и пакеты.
После того, как один турок поудалял все свои пакеты, это уже никак не сделать.
(Он тогда чуть ли не интернет обломал)