
Дізнайтесь більше про нові кар'єрні можливості в EchoUA. Цікаві проекти, ринкова оплата, гарний колектив. Надсилайте резюме та приєднуйтеся до нас.
У цій статті Ви знайдете декілька зручних команд для роботи з npm – менеджером пакетів, що входить до складу Node.js. З наявних ми вибрали ті, які можуть бути найбільш корисними при щоденному використанні.
Базові скорочення
Спочатку згадаємо найвідоміші скорочення для установки:
- встановити пакет:
npm install pkg
, скорочення:npm i pkg
. - встановити пакет глобально:
npm i --global pkg
, скорочення:npm i - g pkg
. - встановити пакет і зберегти як залежність:
npm i --save pkg
, скорочення:npm i - S pkg
. - встановити пакет тільки для використання в розробці (devDependency):
npm i --save - dev pkg
, скорочення:npm i - D pkg
.
Інші скорочення можна подивитися на офіційному сайті.
Цікаве
Ініціалізація нового пакета
Перша дія при створенні нового пакета – npm init
:
Якщо запитання здаються Вам зайвими і Ви хочете їх проскочити, використайте
npm init - y
чи npm init - f
:
Тестування
Часто використовувану команду npm test
можна замінити на npm t
, вона робить те саме:
Доступні скрипти
При роботі над новим проектом Ви, швидше за все, цікавитеся, що взагалі можна запустити в його рамках. Можна відкрити файл package.json
і перевірити секцію scripts
:
Список доступних скриптів можна отримати і через
npm run
:
Ще варіант – встановити інтерактивне меню
ntl
(npm i - g ntl
) і запустити в теці проекту:
Встановлені пакети
Для перевірки залежностей також можна було б зайти в package.json
, але є кращий варіант – npm ls --depth 0
:
Для перевірки пакетів, установлених глобально, підходить та сама команда з відповідним прапором –
npm ls - g --depth 0
:
Запуск локально встановлених виконуваних модулів
Ми встановили пакет, у ньому є виконуваний модуль, але він працює тільки при запуску через npm-скрипти. Чому так відбувається, і як цього уникнути?
Коли ми передаємо команду терміналу, він шукає виконуваний модуль з такою самою назвою по усіх шляхах, перерахованих у змінній оточення PATH
. Локально встановлені пакети реєструють виконувані файли локально, тому вони не перераховані в PATH
і не можуть бути виявлені.
При запуску виконуваних модулів через npm-скрипти менеджер пакетів додає додаткову теку до PATH
, <директорія проекту>/node_modules/.bin
. Її можна знайти, запустивши npm run env | grep "$PATH"
. За допомогою npm run env
можна побачити все доступне змінне оточення.
У node_modules/.bin
локально встановлені пакети розміщують свої виконувані модулі. Запускаємо ./node modules/.bin/mocha
у директорії проекту:
Просто пишіть
./node modules/.bin/<команда>
, коли хочете запустити локально встановлений виконуваний модуль.
Знайти пакет в Інтернеті
У файлі package.json
Ви могли помітити запис repository
. Для того щоб відкрити відповідний репозиторій у браузері, запустите команду npm repo
. Команда npm home
виконує ту ж функцію для запису homepage
. Якщо Ви хочете відкрити пакет на офіційному сайті, використайте команду npm docs
.
Запуск скриптів до і після інших скриптів
Ви швидше за все ознайомлені зі скриптом pretest
, він дозволяє визначити код, який слід запустити перед скриптом test
. Виявляється, pre
і post
скрипти можна створювати для будь-яких інших скриптів, у тому числі кастомних:
Оновити версію пакета
Припустимо, Ви використовуєте semver для управління версіями і хочете оновити версію перед черговим релізом. Можна відкрити package.json
і зробити це вручну, але навіщо?
Простіший спосіб – запустити команду npm version
з major
, minor
чи patch
:
Ще декілька порад можна знайти в спеціальному репозиторії на GitHub, де крім цього, зібрані різні корисні інструменти і посилання на ресурси, пов’язані з npm.
Якщо у Вас є свої трюки, якими Ви хочете поділитися, чекаємо на Ваші пропозиції в коментарях.
Переклад статті “8 npm Tricks You Can Use to Impress Your Colleagues”
Київ, Харків, Одеса, Дніпро, Запоріжжя, Кривий Ріг, Вінниця, Херсон, Черкаси, Житомир, Хмельницький, Чернівці, Рівне, Івано-Франківськ, Кременчук, Тернопіль, Луцьк, Ужгород, Кам'янець-Подільський, Стрий - за статистикою саме з цих міст програмісти найбільше переїжджають працювати до Львова. А Ви розглядаєте relocate?