Posted at

「あまり知られていないnpm CLIコマンド」を読んで勉強

こちらのリンクでnpmのCLIコマンドについてわかりやすかったので、それをみながら勉強したというという投稿なります。

なのでリンク先を見ていただければ、この記事は見なくても大丈夫です。m(_ _)m

また、私はJavaScript勉強中のものです、間違いなどありましたら教えていただけるとありがたいです。


npm pack

https://docs.npmjs.com/cli/pack.html

npmに公開せずにnpm installしてテストできる。npm packを実行すると、.tgzファイルができて、それを npm install できる


index.js

module.exports = function add(a, b) {

return a + b;
}


package.json

{

"name": "add",
"version": "1.0.0",
"description": "Add numbers",
"main": "index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"license": "ISC"
}

$ npm pack #「add-1.0.0.tgz」というファイルができる


$ cd ./path/to/my-project

$ npm i ./path/to/add-1.0.0.tgz

↑を実行すると、package.jsonに以下のように追加され、


package.json

  "dependencies": {

"add": "file:./path/to/add-1.0.0.tgz"
}

実行できることが確認できました。

const add = require("add")

console.log(add(1, 2)) // 3


npm outdated

https://docs.npmjs.com/cli/outdated.html

パッケージが古いかどうか確認できる


npm prune

https://docs.npmjs.com/cli/prune.html

無関係なパッケージを削除する

公式によると、


Extraneous packages are packages that are not listed on the parent package’s dependencies list.

↓google翻訳

無関係なパッケージは、親パッケージの依存関係リストにリストされていないパッケージです。


とあったので、



  1. npm i webpack とした後、


  2. package.jsondependenciesからwebpackを消す


  3. npm prune とすると、package.jsonにwebpackはないので消してくれるようでした。


また、npm prune --production とすると、package.jsondependenciesはそのままで、devDependenciesのパッケージだけを消してくれるようです。


npm view <name> <field>

https://docs.npmjs.com/cli/view.html

パッケージに関するデータを表示してくれる

試してみるとこういった感じで表示されました。

$ npm view console-tetoris


console-tetoris@1.0.0 | MIT | deps: 1 | versions: 1
JavaScriptコンソールで遊べるテトリス
https://github.com/okumurakengo/console-tetoris#readme

dist
.tarball: https://registry.npmjs.org/console-tetoris/-/console-tetoris-1.0.0.tgz
.shasum: 408c79e189bbaf49bbed7f71b4144d94dec4f371
.integrity: sha512-3VDnBgnjAy/5qUW7biNjaIm4YbE3/KlK5qptLUxig2AZVvhZQkR1UiQRhojMEoyeHDWgcerVXcI2kHQeVuLNwQ==
.unpackedSize: 605.5 kB

dependencies:
lodash: ^4.17.15

maintainers:
- okumurakengo <okumurakengoxxx@gmail.com>

dist-tags:
latest: 1.0.0

published 5 days ago by okumurakengo <okumurakengoxxx@gmail.com>


npm docs <pkg>

https://docs.npmjs.com/cli/repo.html

パッケージのドキュメントのWebページを開いてくれる

npm docs reactとすると https://reactjs.org/ がブラウザで開いてくれました。


npm dedupe

https://docs.npmjs.com/cli/dedupe.html

パッケージの重複を減らせる

こちらがとても参考になりました。ありがとうございます:bow:


npm completion

https://docs.npmjs.com/cli/completion.html

これを実行するとnpmのタブ補完をしてくれる。


bash

sudo npm completion >> ~/.bashrc

source ~/.bashrc

insまで打ち込んでTABを押すと保管してくれました


最後まで読んでいただいてありがとうございました。m(_ _)m