Несколько советов по работе с NPM

от автора

image

Установка пакетов

Все знают

# Устанавливает пакет express npm install express 

Какие варианты еще есть?

# Устанавливает все пакеты, перечисленные в package.json npm install  # Устанавливает express и вносит запись о нем в packege.json в секцию dependencies npm install express --save  # Устанавливает grunt и вносит запись о нем в packege.json в секцию devDependencies npm install grunt --save-dev 

Варианты с —save и —save-dev сделают запись в package.json только, если он уже существует.

Чтобы не утруждать себя, каждый раз указывая —save, можно прописать:

# Все - теперь все устанавливаемый пакеты будут автоматом прописываться в package.json npm config set save true 

Кстати, насчет —save

# Кроме того, что все пакеты обновятся, если в package.json в качестве  # версии была прописана "*" - теперь туда попадут конкретные версии npm update --save 

Сокращенные варианты команд

Для ускорения процесса ввода команд удобно использовать сокращения. Самое полезное в виде таблички:

Ключ Сокращение
install i
uninstall r
config c
update up
list ls
—save -S
—save-dev -D

Пример:

npm install express --save  # Совершенно то же самое  npm i express -S 

Подготовка к npm init

Не очень удобно при создании package.json при помощи npm init каждый раз вводить персональные данные. Чтобы этого избежать, сделаем настройку:

# Внесем информацию об авторе "по умолчанию" npm set init.author.name "$NAME" npm set init.author.email "$EMAIL" npm set init.author.url "$SITE" 

Вместо переменных среды $NAME и т.д. можно внести и сами данные. Все, теперь мы готовы к npm init

А что еще можно настраивать?

# Выведет список всех возможных настроек npm config ls -l 

Проверить, не устарели ли пакеты

# Бывает полезно сделать прежде чем делать update npm outdated 

Фиксируем версии пакетов

# Все, можно передавать в продакшен npm shrinkwrap 

Прежде чем передавать продукт в промышленную эксплуатацию, по хорошему, нужно указать в package.json точные версии пакетов с которыми все 100% работает. Эта команда так и сделает. После ее выполнения в вашем package.json все версии пакетов будут жестко зафиксированы — больше никаких "*".

Обновление версии NPM

# NPM вполне может обновлять сама себя npm update npm -g 

P.S. Я здесь новичок, если карму минусуете, то хоть пишите, что не так

ссылка на оригинал статьи http://habrahabr.ru/post/206678/


Комментарии

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *