NP* tipy (npm, npx, …)
Agregované poznámky k používání npm
.
Obsah
Instance balíčků (npm install
)
Obecně zápis vypadá takto:
Lze instalovat z jiných zdrojů, více balíčků najednou, provést čistou instalaci (ci
), … viz [npm_tipy_12] a [npm_tipy_daily].
Odinstalaci lze provést uninstall
nebo rm
. Podobně existuje outdated
, install
pak lze použít k aktualizaci balíčků v repozitáři – případně [ncu_clanek]. Nové balíčky lze vyhledávat pomocí search
.
NPM scripty (npm run
)
Takto lze spouštět příkazy definované v:
1
2
3
4
5
6
7
8
9
10
11
12
{
"scripts": {
"build": "echo \"Call `npm run build:{win|mac} --target TARGET` for running on Windows/Mac(Linux) and TARGET is device id target (see `adb`)\"",
"build:win": "gulp build && cd .. && cordova run --target %npm_config_target% > build.log 2>&1",
"build:mac": "gulp build && cd .. && cordova run --target $npm_config_target > build.log 2>&1",
"jshint": "node ./node_modules/jshint/bin/jshint --verbose",
"jshint_full": "node ./node_modules/jshint/bin/jshint --verbose --show-non-errors",
"git-changelog": "node -e \"console.log(`## `+require(`./package.json`).version);\" > CHANGELOG.md && git --no-pager log --oneline --color --pretty=\"- %s%d\" --grep=\":bug:\\|:boom:\\|:hammer:\" >> CHANGELOG.md",
"publish": "npm set //registry.npmjs.org/:_authToken",
"postpublish": "npm publish"
}
}
Ukázka definice skriptů package.json
…lze používat &
, &&
, |
a ||
k řetězení příkazů (viz analogické použití v bash
i),
či npm_config_*
1 proměnná reprezentující příslušný přepínač při volání scriptu (či nastavení v package.json
).
Pro předání argumentů (pro npm <2.0.0) je potřeba použít --
– npm run jshint -- file.js
. [npm_scripts]
Homepage, dokumentace, …, duplikáty a zranitelnosti
npm Θ Ψ
dále umožňuje (pro Θ):
- informace o balíčku (za Ψ se doplní jméno balíčku): view, docs, homepage, repo, bugs, …
- smazat duplicitní balíčky: dedupe (dpp)
- zkontrolovat zranitelnosti: audit (jako Ψ lze použít příkaz fix)
- kontroly: doctor
- vytvořit symlink: link (pro použití například lokálního balíčku)
- listovat lokální balíčky: list (ls, jako Ψ lze
--depth=0
)
Konfigurace (npm init
)
Lze předefinovat sdílené informace (mimojiné npm config set init.**
) a přeskakovat interaktivní část (-y
) viz [npm_tipy_12] a [npm_tipy_10].
NPX
NPX zjednodušeně slouží jako alias pro spouštění binárek nainstalovaných balíčků. [npx_plus_diff] [npx_info]
Hodí se (i) pro defautlní balíčky, často například používám:
Reference
- [npm_tipy_12] NPM Tips and Tricks. 12 useful NPM tips and tricks for more… | by Ankit Jain | Bits and Pieces – instalace balíčků, inicializace balíčku, NPM skripty
-
[npm_tipy_10] 10 Tips and Tricks That Will Make You an npm Ninja - SitePoint – automatické doplňování (
npm completion >> ~/.bashrc
), přesun globálních balíčků (linux) kvůlisudo
, konfigurace - [npm_tipy_daily] NPM tips and tricks. If you use NPM in your day-to-day… | by Jair Reina | Noteworthy - The Journal Blog
- [npm_scripts] npm Scripts: Tips Everyone Should Know
- [npx_plus_diff] Using npx and npm scripts to Reduce the Burden of Developer Tools - DEV
- [npx_info] NPX makes NPM nicer and even more useful | by Jair Reina | Medium
-
[ncu_clanek] How to update all npm packages to latest version | Reactgo – Článek o balíčku
npm-check-updates
(příkaznpu
)
-
Přesněji se používá
%npm_config_*
/$npm_config_*
pro windows/bash (viz skripty build v ukázce). ↩