npmインストール依存流れ

11593 ワード

npm学習
2019-1-11復習
NPM(node package manager)は、一般的にnodeパケットマネージャと呼ばれる.その主な機能はnodeカバンを管理することです.
インストール、アンインストール、更新、表示、検索、リリースなどがあります.
#    NPM   
npm install 
npm uninstall
npm ls
npm ls -g
npm ls react
npm audit

npm update react@"1.1.2"
npm info react

npm prepublish
npm publish

#          
npm start
npm test
npm run dev
npm run build
npm run prepublish
1、一般的な使用
インストール
nodeパッケージのインストールは2種類に分けられます.ローカルインストール、グローバルインストールです.両者の違いは次のようになります.簡単な例で説明します.
  • ローカルインストール:packageは現在のディレクトリにダウンロードされます.現在のディレクトリでのみ使用できます.
  • グローバルインストール:packageは特定のシステムディレクトリにダウンロードされ、インストールされたpackageはすべてのディレクトリで使用できます.
  •  npm install -g grunt-cli
     #      grunt-cli
    
    個別に作用するパッケージについては、対応するフォルダにインストールし、グローバルのコマンド(cnpm、grunt-cliなどのグローバルツールに対してグローバルインストールが必要です)
    #        grunt-cli
    npm install grunt-cli
    #   0.1.9   grunt-cli
    npm install grunt-cli@"0.1.9"
    #   package.json    (  package.json)
    npm instapackage.jsonl
    
    アンマウント
    アンインストール:install=>uninstallを使えばいいです.
    更新
    reactを例にとる
    npm update react
    
    npm update react@"1.1.2"
    
    表示
    npm ls 
    #          
    
    npm ls -g 
    #         node package
    
    npm ls react-dom 
    #     react-dom   (    +   )
    
    npm info react 
    #     react      
    
    editor
    └── [email protected] 
    
    [email protected] | MIT | deps: 4 | versions: 171
    React is a JavaScript library for building user interfaces.
    https://reactjs.org/
    
    keywords: react
    
    dist
    .tarball: https://registry.npmjs.org/react/-/react-16.6.3.tgz
    .shasum: 25d77c91911d6bbdd23db41e70fb094cc1e0871c
    .integrity: sha512-zCvmH2vbEolgKxtqXL2wmGCUxUyNheYn/C+PD1YAjfxHC54+MhdruyhO7QieQrYsYeTxrn93PM2y0jRH1zEExw==
    .unpackedSize: 194.7 kB
    
    dependencies:
    loose-envify: ^1.1.0  prop-types: ^15.6.2   
    object-assign: ^4.1.1 scheduler: ^0.11.2    
    
    maintainers:
    - acdlite <[email protected]>
    - brianvaughn <[email protected]>
    - fb <[email protected]>
    - flarnie <[email protected]>
    - gaearon <[email protected]>
    - sebmarkbage <[email protected]>
    - sophiebits <[email protected]>
    - trueadm <[email protected]>
    
    dist-tags:
    canary: 0.0.0-ed4c4a51c          next: 16.7.0-alpha.2             
    latest: 16.6.3                   unstable: 0.0.0-0c756fb-f7f79fd  
    
    published a week ago by acdlite <[email protected]>
    
    検索
    npm search react
    #      react     ,       
    
    NAME                      | DESCRIPTION          | AUTHOR          | DATE       | VERSION  | KEYWORDS
    react                     | React is a…          | =acdlite…       | 2018-11-13 | 16.6.3   | react   
    babel-preset-react        | Babel preset for…    | =hzoo…          | 2017-04-07 | 6.24.1   | 
    react-router-dom          | DOM bindings for…    | =mjackson…      | 2018-06-06 | 4.3.1    | react router route routing history link
    react-router              | Declarative routing… | =mjackson…      | 2018-06-06 | 4.3.1    | react router route routing history link
    react-dev-utils           | Webpack utilities…   | =fb =gaearon…   | 2018-11-01 | 6.1.1    | 
    react-redux               | Official React…      | =gaearon…       | 2018-11-10 | 5.1.1    | react reactjs hot reload hmr live edit flux redu
    react-error-overlay       | An overlay for…      | =fb =gaearon…   | 2018-11-01 | 5.1.0    | overlay syntax error red box redbox crash warnin 
    
    コンパイル
    異なるパッケージは異なるコンパイルが必要です.通常はプロファイルに従って処理します.npm prepublish運転後、package.json and package-lock.jsonを修正し、npm pblishを実行して新しいバッグを発表します.もちろん、npm loginを登録して、登録を確定してから発注します.具体的な発注の流れは異なる倉庫の使用マニュアルを参照してください.
    リリース
    npm publish
    #             (   package.json           )
    
    2、NPM配置
    npmのイントラネットでの配置:npm configは主に添削調査で、以下はプロキシのproxyで分析します.この部分の機能は現在あまり使われていません.
    proxyを設定する
    インターネットはnpmを使っていますが、頭が痛いのは代理店です.http://proxy.example.com:8080という命令があります.
    npm config set proxy http://proxy.example.com:8080
    
    npm config setコマンドがよく使われているので、以下のように簡単に書くことができます.
    npm set proxy http://proxy.example.com:8080    
    
    proxyを見る
    設定が終わったら、現在の代理設定を確認します.
    npm config get proxy
    
    出力は以下の通りです
    http://proxy.example.com:8080/
    
    以下のように簡単に書くことができます.
    npm get proxy
    
    proxyを削除します
    代理は使いません.削除します.
    npm delete proxy
    
    すべての設定を表示
    npm config list
    
    設定ファイルを直接変更する
    配置を変更するのが面倒くさいと思ったら、直接配置ファイルに入れて修正します.
    npm config edit
    
    3、package.jsonフィールドの紹介
  • name:packageの名前(彼はurlの一部になりますので、non-url-safeの文字は通りません.「.」、「_」も出てはいけません.)http://registry.npmjs.org/あなたがつけた名前はすでに存在しますか?
  • version:packageのバージョンは、packageが変化したときに、versionも一緒に変化するべきです.また、あなたが宣言したバージョンはsemverの検証(semverが自分でGoogleを通じて)
  • を通過する必要があります.
  • dependencies:packageのアプリケーション依存モジュール、つまり他の人がこのpackageを使用するには、少なくともどのような依存関係をインストールする必要があります.依存モジュールは現在のモジュールのnode_にインストールされます.modulesディレクトリの下です.例えば、運行に必要なreact vue boot strap.
  • devDependencies:packageの開発依存モジュール、つまり他の人がこのパッケージで開発します.例えばwebpack
  • 4、バージョン番号
    a、「~1.2.3」
    "~1.2.3" = ">=1.2.3 <1.3.0"
    
    "~1.2" = ">=1.2.0 <1.3.0"
    
    "~1" = ">=1.0.0 <1.1.0"
    
    b、「1.x.x」
    "1.2.x" = ">=1.2.0 <1.3.0"
    
    "1.x.x" = ">=1.0.0 <2.0.0"
    
    "1.2" = "1.2.x"
    "1.x" = "1.x.x"
    "1" = "1.x.x"
    
    5、npmアップグレード
    npm install npm@latest -g
    
    通常npmはnodeJSと同時にインストールされます.デフォルトのインストールバージョンは5です.場合によっては手動でnpmバージョンを更新する必要があります.
    Since npm and node.js products are managerd by different entities、udates and mantnance can becomplex.Also、the Node.js installation process installs npm in a directory atory atonight hanceratcars.Therication.
    To solive both these ises,many developers opt to use a node version manager,or nvm,to install npm.The version manage will avoid permissions errors,and will solive the complexities of udating Nodes.jand.pm.
    In addition、developers can use n n nvm to test their apaplications on on multiiple versions of npm.The nvm enaabeles s s s s s s s s s s s s s s.swittttch npm asasasas node versions.This makes itititeaeaeaeaeaeaeaeaeaeaeaeaeaeaeaeaeaease se se se ininininininininininininininininininininininininininininininininininininininininininininininininininininininininininininininininininininininininininr,use the instructions for the version manager you select to learn how to switch versions,and to learn how to keep up-to date with the latest version of npm.
    参考npm公式文書より:npmの出現は、バージョン問題の互換性を考慮する必要はありません.直接コンパイルすればいいです.