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イメージの作成、アップロード、プル、デプロイを理解するための記事

推薦する

純粋な CSS を使用して 3D 回転効果を実装するサンプル コード

3D効果を実現するには、主にCSSのpreserve-3dプロパティとperspectiveプロパテ...

vue-admin-template 動的ルーティング実装例

ログインを提供し、ユーザー情報データインターフェースを取得するapi/user.js内 '@...

Tomcat マルチインスタンスの展開と構成の原則

1. ファイアウォールをオフにし、Tomcatのインストールに必要なソフトウェアパッケージを/opt...

VUEプロジェクトでXSS攻撃に遭遇した実体験

目次序文原因を発見するカスタムフィルタリングルール要約する序文インターネットの急速な発展に伴い、情報...

CocosCreator で物理エンジン ジョイントを使用する方法

目次マウスジョイント マウスジョイント距離ジョイント距離ジョイントモータージョイント直動ジョイント変...

WeChatアプレットでSVGアイコンを使用する方法

SVG は、さまざまな利点があるため、近年広く使用されています。残念ながら、WeChat ミニプログ...

Harborを使用してプライベートDockerリポジトリを構築する方法

目次1. オープンソースの倉庫管理ツール Harbor 2 インストール2.1 DockerとDoc...

MySQL SQL ステートメントのパフォーマンス チューニングの簡単な例

MySQL SQL ステートメントのパフォーマンス チューニングの簡単な例サーバー開発を行う際には、...

Vueは、商品の数を制御するためのコンポーネントのパッケージ化と使用を実装します。

Vueのコントロール商品数量コンポーネントのカプセル化と使用は参考までに。具体的な内容は以下のとお...

MySQL 圧縮の使用シナリオとソリューション

導入圧縮トランスポート プロトコル、圧縮列ソリューション、圧縮テーブル ソリューションなど、MySQ...

タブバーの切り替え効果を実現するJavaScript

タブバー: 異なるタブをクリックすると異なるコンテンツが表示され、クリックしたタブのスタイルが変更さ...

Portainer を使用した Docker コンテナのデプロイのプロジェクト実践

目次1. 背景2. 操作手順3. Portinerをインストールする3.1 Dockerのデプロイメ...

Docker-compose を使用して Django アプリケーションをオフラインでデプロイする方法

目次開発環境用のDocker-ceをインストールする開発環境用のDocker-composeをインス...

Dockerに証明書を追加する方法

1. アップグレードプロセス: sudo apt-get updateパッケージが見つからない、パッ...

ウェブページからテキスト透かしを削除する2つの簡単な方法

<br /> 特定の Web サイトを閲覧して、優れた Web ページを見つけた場合、そ...