Node.js パッケージ マネージャー npm の具体的な使用方法

Node.js パッケージ マネージャー npm の具体的な使用方法

目的

現在の Node.js インストール パッケージにはすべて、重要なツールパッケージ マネージャー npm が付属しています。 npm には、サードパーティ モジュールのダウンロードと管理、プロジェクトの構築と実行という 2 つの主な機能があります。 npm の使用自体は複雑ではありませんが、中国本土のネットワーク環境で安心して使用できるわけではなく、作業負荷も大きくなってしまいます。この記事では、関連する内容について説明します。

npm init および package.json ファイル

通常、Node.js プロジェクトのルート ディレクトリにはpackage.jsonファイルがあります。このファイルは主に、プロジェクト名、バージョン番号、エントリ ファイル、必要なモジュールなどのプロジェクト関連の情報を構成します。このファイルは手動で作成することもできますが、通常はnpm initコマンドを使用して生成されます ( npm init -yを使用してクエリ フェーズをスキップし、デフォルトのパラメーターを使用して package.json ファイルを生成することもできます)。

ここに画像の説明を挿入

通常、 package.jsonファイルには、次のような多くのフィールドが含まれています。

{
  "名前": "ないす",
  "バージョン": "1.0.0",
  「説明」: 「ラララ」、
  "メイン": "index.js",
  「スクリプト」: {
    「開始」: 「ノード index.js」
  },
  "著者": "nx",
  「ライセンス」: 「ISC」、
  「依存関係」: {
    "電子リススタートアップ": "^1.0.0",
    "シリアルポート": "^9.2.4"
  },
  「devDependencies」: {
    "電子": "15.1.1",
    "電子再構築": "^3.2.3"
  }
}

いくつかのフィールドは比較的重要であり、関連する説明は次のとおりです。

名前プロジェクトname

versionバージョン番号

mainプロジェクトのメインエントリファイル

scripts npm runコマンド スクリプト たとえば、上で"start": "node index.js"が設定されている場合、ターミナルでnpm run startを使用してnode index.jsコマンドを実行できます (start/stop/test/restart の 4 つのコマンドでは run を省略できます)。これは、複雑なコマンドを実行する必要がある場合に非常に便利です。

dependenciesプロジェクトの実行に必要なモジュール
devDependenciesプロジェクト開発に必要なモジュール
これら 2 つのフィールドには、プロジェクトが依存するモジュール名とバージョンが格納されます。この情報を使用して、 npm installを使用してこれらのモジュールをプロジェクトにインストールできます

モジュールのインストールと管理

モジュールのインストール

モジュールのインストールにはnpm install <packageName>を使用します。たとえば、次のデモでは cowsay モジュールがインストールされます。

ここに画像の説明を挿入

npm がモジュールをインストールすると、そのモジュールが依存するモジュールもインストールされます。デフォルトでは、ディレクトリの下のnode_modulesフォルダにインストールされます。インストールされたモジュールは、 package.jsonファイルのdependenciesフィールドに記録され、モジュールと依存モジュールのバージョン情報はpackage-lock.jsonファイルに記録されます。

インストール時に、 npm install [email protected]のように、モジュール名の後に@版本號を追加して特定のバージョンをインストールできます。

モジュールがすでにインストールされている場合は、インストール コマンドを再度実行しても再インストールされません。インストールを強制するには-fまたは--forceオプションを使用します: npm install --force <packageName>

インストール時に、 -Sまたは--saveオプションを使用して、モジュールをプロジェクト実行のdependencies (デフォルト値) としてマークできます。また、 -Dまたは--save-devオプションを使用して、モジュールをプロジェクト開発に必要なdevDependenciesモジュールとしてマークすることもできます (例: npm install --save-dev <packageName> )。

モジュールはnpm install --global <packageName>のように、 -gまたは--globalオプションを使用してグローバルにインストールすることもできます。

インストール モジュール内のinstallコマンドは、 iと省略することもできます。

インストールされたモジュールを表示する

現在のディレクトリにインストールされているモジュールとその依存関係を表示するには、 npm listを使用します。

グローバルにインストールされたモジュール情報を表示するには、 -gまたは--globalオプションを使用し、表示深度を指定するには--depth=xを使用します。

ここに画像の説明を挿入

モジュールの更新

モジュールを更新するには、 npm update <packageName>を使用します。 --save --save-dev --globalなどの上記のオプションもここで使用できます。

モジュールの削除

モジュールをアンインストールするには、 npm uninstall <packageName>を使用します。
グローバル モジュールをアンロードするには、 -gまたは--globalオプションを使用します。

ネプ

npx は、npm の新バージョン (5.2 以降) に含まれるツールで、主にモジュールを実行するために使用されます。モジュールがプロジェクト ディレクトリまたはシステム環境に存在する場合は、モジュールを直接実行します。存在しない場合は、インストールする必要はありません。npx はモジュールを一時ディレクトリにダウンロードしてから実行します。

ここに画像の説明を挿入

モジュールのコンパイル

サードパーティのモジュールの中には、他の言語で開発されているものもあります。これらのモジュールは直接実行することはできず、使用する前にオペレーティング環境用にコンパイルする必要があります。これにはコンパイル ツールが必要で、最も一般的なのはnode-gypおよびnode-pre-gypツールです。一部のプラットフォームの一部のモジュールでは、他のツールが必要になる場合があります。たとえば、Windows プラットフォームでは、 windows-build-toolsツールが必要になることがよくあります。

これらのツールは必要に応じてインストールおよびコンパイルすることができ、ほとんどの場合、npm が自動的に処理します。一部のプラットフォームでは、Node.js のインストール時にこれらのツールもインストールできます。たとえば、Windows プラットフォームでは、Node.js のインストール時にインストール オプションを確認できます。

ここに画像の説明を挿入

Node.js をインストールした後、次のツールがインストールされます。

ここに画像の説明を挿入

ここに画像の説明を挿入

Node.js を最初にインストールしたときにこのオプションをチェックしなかった場合は、再インストールするだけです。

バージョン管理

上記のpackage.jsonファイルとpackage-lock.jsonファイルにはモジュール関連の情報が記録されており、重要な情報の 1 つはモジュールのバージョン番号です。

Node.js のモジュールまたはプロジェクトのバージョン番号は、ドットで区切られた 3 つの数字で構成され、左から順にメジャー バージョンマイナー バージョンパッチ バージョンとなります。

バージョン番号のルール自体は特別なものではありませんが、npm 管理や package.json、package-lock.json ファイルのバージョン番号の前後には多くの修飾子があります。これらの記号は、モジュールのインストールと更新のルールを指定します。一般的なルールは次のとおりです。

  • 変更なし: 2.2.3などの特定のバージョンを指定します。
  • latest : 利用可能な最新バージョンを使用します。
  • ^ : 左端のゼロ以外の数字を変更しない更新のみが実行されます。
  • ~ : パッチバージョンのみを更新します。
  • > : 指定されたバージョンより高いバージョンを受け入れます。
  • < : 指定されたバージョンより低いバージョンを受け入れます。
  • = : 正確なバージョンを受け入れ、 < >と組み合わせて使用​​できます。
  • - : 2.1.0 - 2.6.2など、特定の範囲のバージョンを受け入れます。
  • || : < 2.1 || > 2.6などの組み合わせ。

ソースを変更

中国本土のネットワーク環境では、モジュールのダウンロードやインストールのエラーや失敗が頻繁に発生し、プログラムが正しく動作しなくなります。再インストールするには、次の手順を試してください。

  • npm cache clean --force ;
  • node_modulesフォルダとその内容を削除します。
  • package-lock.jsonファイルがある場合は、それを削除することもできます (バックアップを忘れないでください)。
  • モジュールを再インストールします (package.json ファイルがある場合は、 npm installだけですべてのモジュールを 1 つの手順でインストールできます)。

上記の方法が機能せず、ラダーがない場合、またはラダーが機能しない場合は、ソースを変更することしかできません。

nrmツールを使用してソースを変更する

npm ソースを変更する最も便利な方法は、nrm ツールを使用することです。npm npm install -g nrmを使用してグローバルにインストールすることも、直接npx nrmを使用することもできます。 nrm の一般的な操作は次のとおりです。

  • nrm ls利用可能なソースとアドレスを一覧表示します。
  • nrm test利用可能なソース速度をテストします。
  • nrm use <registry>スイッチソース;
  • add <registry> <url>ソースを追加します。
  • del <registry>ソースを削除します。

ここに画像の説明を挿入

npmの代わりにcnpmを使用する

cnpm npmのほとんどの作業を置き換えるために使用できますが、Taobao のミラーソースを使用します。https://npmmirror.com/ を参照してください。

npm install -g cnpm --registry=https://registry.npmmirror.comを使用してcnpmをインストールできます。後で使用する場合は、本来 npm が必要な箇所を cnpm に置き換えるだけです。

要約する

Node.js 開発は基本的に npm ツールと切り離せませんが、npm も使いやすいです。発生する可能性のある主な問題はネットワークの問題です。

npm と上記の cnpm に加えて、Yarn も Node.js の一般的なパッケージ管理ツールです。詳細については、公式リンクを参照してください: https://classic.yarnpkg.com/lang/en/

Node.js パッケージ マネージャー npm の具体的な使い方については、これで終わりです。Node.js パッケージ マネージャー npm に関するより関連性の高いコンテンツについては、123WORDPRESS.COM の過去の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • node.js における npm パッケージ管理ツールの使用状況の分析
  • Node.jsのインストールとnpmのグローバル環境変数の設定の詳細な説明
  • nodejs と npm のインストールと使用方法の紹介
  • Node.js npm コマンドを使用して node.js スクリプトを実行する方法
  • node.js のデフォルトの npm インストール ディレクトリ インスタンスを変更する
  • Nodejsに組み込まれているnpmのデフォルト設定パスを変更する
  • Mac に nodejs、npm、cnpm をインストールするチュートリアル
  • Node.js パッケージ管理ツール NPM の使い方

<<:  ccs3に基づくタイムライン実装方法

>>:  Dockerイメージの作成、アップロード、プル、デプロイを理解するための記事

推薦する

JavaScript はスローモーションアニメーションのカプセル化と使用法を説明します

プロセス分析の実装(1)繰り返して電話をかけるには?答え: 関数をカプセル化して一度だけ呼び出すコー...

鏡像効果を実現する JavaScript キャンバス

この記事では、JavaScriptキャンバスでミラーイメージ効果を実現するための具体的なコードを参考...

Oracle Rownum 書き込みに似た MySQL の詳細な例

Rownum は、Oracle での独自の書き込み方法です。Oracle では、rownum を使用...

DockerにJava環境をインストールするための実装手順

この記事は Linux centos8 をベースにして、docker をインストールし、イメージをプ...

Linux の crw、brw、lrw などのファイル属性は何ですか?

ファイルとは何ですか?すべてのファイルは実際には文字列のストリームですが、適切な解析方法を使用すると...

vue cli3は環境ごとにパッケージ化の手順を実装します

cli3 でビルドされた vue プロジェクトは、ゼロ構成ファイルとして知られています。パッケージ化...

HTML の基本 - ハイパーリンク スタイルを設定する簡単な例

*** ハイパーリンクのスタイル設定の例a:link クリックされる前のハイパーリンクの状態a:vi...

WindowsシステムでPhPStudy MySQLの起動に失敗する問題を解決する

エラーを報告するApache\Nginx サービスは正常に起動しましたが、MySQL は起動に失敗し...

ページ リファクタリング スキル - Javascript、CSS

JS、CSSについてCS: ...上部のスタイルシートCSS式を避ける外部JS、CSSの使用JSと...

JS変数ストレージのディープコピーとシャローコピーの詳しい説明

目次可変タイプとストレージスペーススタックメモリとヒープメモリ基本的なデータ型参照タイプグラフィック...

Firefoxでリンクをクリックしたときに点線の枠線を削除する方法

今日、ブラウザの互換性の問題にいくつか遭遇しました。そのうちの 1 つは奇妙に感じました。Firef...

フォーム内のどの隠し属性をフォームとともに送信できるか

フォーム内の visibility=hidden および display=none のフォーム要素は...

dockerでPostgreSQLを実行する方法

1. Dockerをインストールします。参考URL: Docker 入門インストールチュートリアル ...

JavaScript キャンバスでカラフルな太陽のハロー効果を実現

この記事では、カラフルな太陽のハロー効果を実現するためのJavaScriptキャンバスの具体的なコー...

MySQL の日付型の単一行関数コードの詳細な説明

MySQL の日付型単一行関数: CURDATE()またはCURRENT_DATE()は現在の日付を...