skillup

技術ブログ

JavaScript

npmコマンドの整理

投稿日:2018年11月19日 更新日:

npmのコマンドのまとめに関して。

npmとは?

nodeによるライブラリのパッケージ管理の手法。PHPでいうcomposer。composerがcomposer.jsonで管理するのと同様。package.jsonというファイルで依存ライブラリを管理する。

インストールされた記録などはpackage-lock.jsonに記録される。

よく使うコマンド

npm init -y

package.jsonをディフォルトで生成するコマンド。

npm install パッケージ名(npm -i パッケージ名)

パッケージのインストール。これをすることで./node_modules以下にライブラリがインストールされる。npm install パッケージ名@バージョンなどの指定もできる。

以下はオプション

-g

通常はカレントディレクトリ以下に有効だが、-gのオプションはグローバル(環境全体になる)にインストールされる。(ホームディレクトリに./node_modulesがインストールされる)

–save-dev(-D)

サイトの開発時のみ必要な場合はこのオプションが必要になる。主に他の人間がnpm installをした時にこのライブラリが読み込まれるかどうかが変わってくる。

勉強メモ/npmの使い方(node.js=v0.11.16, npm=2.3.0, 2015-03時点)

npm installの–saveと–save-devの違いと-g

npm uninstall

アンインストール。依存ライブラリの関係があるのでnode_modules以下をrmすると不具合が起こる。

npm list –depth==0

カレントディレクトリのプロジェクトにインストールされているライブラリの一覧。--depth==0をつけないと再帰的処理が走るのでつけたほうが無難。-gをつけるとグローバル環境。

npxコマンド

node_modules以下にインストールされたライブラリは例えば./node_modules/node-sass/bin/node-sass sample.scss sample.cssなどのコマンドで実行することが可能ですが、長く面倒なためnpx node-sass sample.scss sample.cssと短縮が可能。

npm runコマンド

package.jsonのscriptに記述することで特定の処理を動かすことができます。

上記のように書かれていた場合,npm run devとうつとnpm run developmentを実行したことになり、結果として、

cross-env NODE_ENV=development node_modules/webpack/bin/webpack.js --progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.jsを実行することになります。

ちなみに別階層へのインストール、ビルドをしたい場合は、 --prefix をつければOKです。

npm install <package> --prefix ./path/directory/

npm --prefix ./path/directory run build

-JavaScript
-, ,

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

no image

vueのコンポーネント化

vueの記事をポツポツ上げてきましたが、コンポーネント化した書き方に関して。 既存のvueの記事 Vue.jsについて vueの環境構築 今まではCDNで読み込んだり、HTMLの中に直接vueを入れて …

no image

モジュールバンドラparcelについて

現在のフロントエンドだと、es6以降の書き方が主流になっていることもあり、一度慣れてしまうとなかなか戻れない便利さがあります。 私の場合、設定が面倒だったり、Chromeではトランスパイルしなくても動 …

no image

vue-routerについて

vueでのルーティングに関して。 Vueの場合、いわゆるSPA(シングルページアプリケーション)という用途で使われることがあると思います。 ただその場合でも擬似的なルーティング(URLの切り替えなどに …

no image

無限スクロールプラグイン infinite scroll

無限スクロールのプラグインについていろいろ調べてきましたが、今回はテーブル形式でなく、通常の無限スクロールができるもの(イメージとしてはtwitterっぽい遷移。) infinte scroollとい …

no image

JavaScriptのexport

JavaScriptのexportについて。 es6の大きなメリットとして、ライブラリをモジュール化して、外部から読み込むことができますが、読み込み方に少し癖があります。 気をつけるポイントとしては、 …