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 cowsay@1.5.0のように、モジュール名の後に@版本號を追加して特定のバージョンをインストールできます。

モジュールがすでにインストールされている場合は、インストール コマンドを再度実行しても再インストールされません。インストールを強制するには-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イメージの作成、アップロード、プル、デプロイを理解するための記事

推薦する

CSSアニメーションによるテーブルスクロールカルーセル効果の実装

前回の CSS 回転灯と同じ内容の CSS アニメーションの応用です。これは単なる別のアプリケーショ...

JavaScript ECharts の使用方法の説明

以前、プロジェクトを行う際に ECharts を使用しました。今日はそれをメモとして整理し、より多く...

Node.jsサービスDockerコンテナアプリケーション実践のまとめ

この記事では、Docker コマンドの使用とインストールについては説明しません。Docker を基礎...

MySQL データベースのインストールと Navicat for MySQL の使用に関するチュートリアル

MySQL は、スウェーデンの会社 MySQL AB によって開発され、現在は Oracle が所有...

Vue3は画像拡大鏡効果を実現します

この記事の例では、画像拡大鏡効果を実現するためのVue3の具体的なコードを参考までに共有しています。...

MySQL スロークエリログの役割と公開

序文MySQL スロー クエリ ログは、MySQL が提供するログ レコードの一種です。これは、応答...

Linux の RPM パッケージでインストールされた xinetd ベースのサービスの管理

目次序文1. xinetdサービスに基づく起動管理(1)Telnetサービスのインストール(2)Te...

MySQL での coalesce() の使用に関するヒントのまとめ

序文最近、偶然 MySQL の coalesce を発見しました。ちょうど時間があったので、MySQ...

Mysql の 2 つのテーブル間の結合クエリの 4 つの状況の概要

一般的に言えば、より完全な結果を得るためには、2 つ以上のテーブルから結果を取得する必要があります。...

ページ内のリストプルダウン効果を実現するための純粋なCSS

次のような効果がよく見られます。 そうです、ページ上でよく使われる「展開と折りたたみ」のインタラクシ...

JavaScript デザインパターン 責任連鎖パターン

目次概要コードの実装パラメータ定義成し遂げる責任連鎖パターンの実装改善概要責任チェーン パターンは、...

webpack -v エラー解決

背景webpackのバージョンを確認したいのですが、webpack -vを実行するとエラーが報告され...

Vue は div の高さをドラッグ可能にします

この記事では、divのドラッグ可能な高さを実現するためのVueの具体的なコードを参考までに共有します...

node.jsのコアモジュールとは

目次グローバルオブジェクトグローバルオブジェクトとグローバル変数プロセスコンソール一般的なツールユー...

MySQLユーザー権限テーブルについての簡単な説明

MySQL はインストール時に自動的に mysql という名前のデータベースを作成します。mysql...