npm知識整理

4433 ワード

1.npmソース
node包倉庫は、androidのgrandleとjavaのmavenに似ています。
彼の役割は具体的に二つあります。一つはバックグラウンドモジュールの登録と管理システムで、URLはnpmjs.comです。二つ目は彼のコマンドライン機能で、彼は多くのコマンドライン機能を提供しています。
#  npm       
$ npm install npm@latest -g
$ npm install [email protected] -g
#   npm      
$ npm -v

# npm    
$ npm help

#          (full usage)
$ npm -l

#     
$ npm config list -l
2.据え付け
'グローバルインストール'とは、モジュールを直接Nodeのインストールディレクトリにダウンロードし、各項目で呼び出しができます。'ローカルインストールとは、一つのモジュールを現在のディレクトリにダウンロードするnode_のことです。modulesサブディレクトリは、現在のディレクトリとそのサブディレクトリの中でのみ、このモジュールを呼び出すことができます。
#         
$ npm install 
# npm       github  
$ npm install git://github.com/package/path.git
$ npm install git://github.com/package/path.git#0.1.0
#   global  ,  “    ”    (   -g)
$ sudo npm install -global [package name]
–save:        dependencies,       -S。
–save-dev:         devDependencies,       -D。
# npm install     dependencies   devDependencies        ,
#     production  ,     dependencies     。
$ npm install --production
#   
$ NODE_ENV=production npm install
#     ,npm install    ,node_modules              。
#     ,        ,               ,    。
#      ,           ,npm         ,    -f --force  。
$ npm install  --force
3.表示
npmモジュール倉庫では、レギストという照会サービスを提供しています。npmjs.orgを例にして、その検索サービスのURLはhttps://registry.npmjs.org/ 。このURLの後ろにモジュール名が付いていると、JSONオブジェクトが得られます。中にはこのモジュールのすべてのバージョンの情報が入っています。例えば、訪問https://registry.npmjs.org/reactを選択すると、reactモジュールの全バージョンの情報が表示されます。下のコマンドと同じ効果です。
$ npm view react

# npm view    
$ npm info react
$ npm show react
$ npm v react
registryアドレスのモジュール名の後ろには、バージョン番号やラベルについて、特定のバージョンの情報を調べるためにも使えます。例えば、訪問https://registry.npmjs.org/re... は、Reactの0.4.6版を見ることができます。
npmは「意味バージョン」を採用しています。意味バージョンとは、a.b.cという形式です。aは大きいバージョン番号で、bは小さいバージョン番号で、cはパッチ番号です。
# npm info           
npm info react //  json  
npm info react name // react
npm info react version // 15.6.1
# npm        ,       npm       ‘   ’  
$ npm search 
#              
$ npm list

#            
$ npm -global list

# npm list           。
$ npm list underscore
4.更新
これはまずリモート倉庫で最新バージョンを調べてから、ローカルバージョンを調べます。ローカルバージョンが存在しない場合、またはリモートバージョンが新しい場合、インストールされます。
#          
npm update -global [package name]
5.削除
#          
sudo npm uninstall [package name] -global
6.スクリプト
npmはモジュール管理だけでなく、スクリプトの実行にも使用できます。package.jsonファイルにはスクリプトコマンドを指定するためのスクリプトフィールドがあります。npmの直接呼び出しに使用できます。
"scripts": {
    "lint": "jshint **.js",
    "test": "mocha test/"
}
#   scripts        
npm run
#   lint  
npm run lint
npm runはshellを作成し、指定された命令を実行して、PATH変数にnodeumodules/.binを追加します。これはローカルモジュールが直接実行できることを意味します。つまり、npm run lintは直接jshint.jsを実行すればいいです。
注意:npmは2つのコマンドを内蔵しています。npm testはnpm run testを実行するのと同じです。npm startはnpm run startを実行するのと同じです。
npmはいくつかのコマンドを実行すると、いくつかの標準スクリプトを実行します。
prepublish:         。
publish, postpublish:         。
preinstall:         。
install, postinstall:         。
preuninstall, uninstall:         。
postuninstall:         。
preversion, version:         。
postversion:         。
pretest, test, posttest:  npm test     。
prestop, stop, poststop:  npm stop     。
7.設置プロセス
1.   npm install  
2. npm   registry           
3.      ,   ~/.npm  
4.            node_modules  
8.オフラインインストールを解決する1
npmはキャッシュディレクトリからモジュールをインストールするためのcache-minパラメータを提供します。--cache-minパラメータは1つの時間(単位は分)を指定します。この時間を超えるモジュールだけが、registryからダウンロードできます。
$ npm install --cache-min 9999999 
上のコマンドで指定したのは、999分を超えるモジュールだけです。registryからダウンロードします。実際には指定されています。すべてのモジュールがキャッシュからインストールされています。これでダウンロード速度が大幅に速くなります。他の書き方もあります。
$ npm install --cache-min Infinity 
しかし、これはオフラインモードと同じではなく、ネットワーク接続が必要です。npmチームはこれらの問題があることを知っていて、cacheを書き直しています。そして、将来はnpmがオフラインの場合に使用できるように、Offineパラメータを提供します。
9.オフラインインストールソリューション2
第1のクラス:エージェントregist。registの要求は、エージェントを介してタイムアウトに戻り、cacheを実行します。第2のクラス:npm installの代わりに。
npm-cache install
10.参考文章
npmモジュール取付メカニズム紹介npmモジュールマネージャ