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 の組み込みオブジェクト 数学と文字列の詳細な説明

目次数学オブジェクト共通プロパティ一般的な方法Math.random()文字列メソッド長さプロパティ...

リアルタイムクロックを実装するネイティブJS

ネイティブ JS で実装したリアルタイム クロック エフェクトを共有します。エフェクトは以下のとおり...

nginx-ingress-controller ログ永続化ソリューションのソリューション

最近、nginx-ingress-controller のアプリケーションについて説明した公開アカウ...

WeChatアプレットトラック再生の実装と遭遇した落とし穴の詳細な説明

WeChat アプレットの軌跡再生では、主に線描画操作にポリラインを使用し、車の移動操作にマーカーを...

Windows 10 での MySQL 8.0.16 のインストールと設定のチュートリアル

この記事では、参考までにMySQL 8.0.16のインストールと設定方法のグラフィックチュートリアル...

MySQLは外部SQLスクリプトファイルのコマンドを実行します

目次1. SQLコマンドを含むSQLスクリプトファイルを作成する2. SQLスクリプトファイルを実行...

実際のプロジェクトでElementUIを使用する手順の詳細な説明

目次1. テーブル自動ソート2. ページング機能3.el-checkbox-group 複数選択ボッ...

Vueタイマーの詳細な使い方

この記事では、参考までにタイマーを実装するためのVueの具体的なコードを紹介します。具体的な内容は次...

HTTP 戻りコード一覧(中国語と英語の説明)

httpリターンコードリスト(以下は概要です)詳細な中国語の説明についてはここをクリックしてくださ...

JS 内の Json 文字列 + Cookie + ローカルストレージ

目次1.Json文字列1.1Json構文1.2 例2. クッキー2.1 使い方は? 3. ローカルス...

メタタグを簡単に説明すると

META タグは、一般的に タグと呼ばれ、HTML Web ページのソース コード内の重要な HTM...

WeChatミニプログラムは同時通訳を利用して音声認識を実装します

私は同時通訳音声認識機能を使用して、WeChatアプレットのホームページの音声検索機能を実現しました...

HTML で入力テキスト入力キャッシュのクリアを禁止する 2 つの方法

ほとんどのブラウザはデフォルトで入力値をキャッシュし、ctl+F5 を使用して強制的に更新することに...

Centos7 で keepalived ログを別のパスに設定する方法の詳細な説明

Keepalived のインストール: cd <keepalived_sourcecode_p...

Tomcat Nginx Redis セッション共有プロセス図

1. 準備ミドルウェア: Tomcat、Redis、Nginx Jar パッケージ: commons...