#cli #npm
1️⃣ pre- post- scripts
Для ежедневной работы JS часто использует автоматизацию с помощью npm scripts. У них есть pre- post- scripts, т.е. скрипты автоматически вызваны до или после скрипта. Например, так можно перекомпилить тайпскрипт перед запуском:
"prestart": "npm run build". На канале уже был рецепт об postinstall идет в связки с пакетом patch-package.Для выключения работы этих скриптов необходимо установить флаг
ignore-scripts в .npmrc или командой:npm config set ignore-scripts true2️⃣ Использование --
Для добавления аргументов в npm script используется --. Например, в проекте есть команда
"test": "jest". Команда npm run test -- -t="Example" запустит jest -t="Example", то есть только тесты с названием Example. Это работает только основной команды, но не для pre-/post-.3️⃣ Работа с PATH
В npm скриптах не нужно прописывать путь к исполняемым файлам, хранимых в
./node_modules/.bin. Npm в момент запуска скрипта расширяет переменную PATH. Это идею можно расширить и в другую сторону, то есть сделать:export PATH="$PATH:./node_modules/.bin"После чего можно запускать установленный npm пакеты как из скриптов. Удобно для редких команд, которые не имеет смысла тащить в npm scripts.
Рецепты по теме:
– Что такое .npmrc и почему его стоит добавить?
– Как исправить код в node_modules?