Node.js
モジュールのロード方法
サーチ…
グローバルモード
グローバルモードでデフォルトディレクトリを使用してNodeをインストールした場合、NPMは/usr/local/lib/node_modules
パッケージをインストールします。シェルに次のように入力すると、NPMはディレクトリ/usr/local/lib/node_modules/express
内のsaxという名前のパッケージの最新バージョンを検索、ダウンロード、インストールします。
$ npm install -g express
フォルダに十分なアクセス権があることを確認してください。これらのモジュールは、そのマシンで実行されるすべてのノードプロセスで使用可能になります
ローカルモードインストール。 Npmは/home/user/apps/my_app
ある場合、例えばnode_modules
というnode_modules
新しいフォルダを作成して現在の作業フォルダにモジュールをダウンロードしてインストールします。新しいフォルダはnode_modules
/home/user/apps/my_app/node_modules
まだ存在しない場合
モジュールの読み込み
コード内のモジュールを参照すると、ノードは最初に参照されたフォルダー内のnode_module
フォルダーを必要なステートメントでnode_module
ます。モジュール名が相対的でなくコアモジュールではない場合、Nodeは現在のnode_modules
フォルダー内でモジュール名を検索しようとしますディレクトリ。たとえば、次の操作を行うと、Nodeは./node_modules/myModule.js
ファイルを探します。
var myModule = require('myModule.js');
ノードがファイルの検索に失敗した場合、ノードは../node_modules/myModule.js
という親フォルダ内を検索します。再度失敗すると、親フォルダを試し、ルートに達するか、必要なモジュールが見つかるまで下降し続けます。
必要に応じて.js
拡張子を省略することもできます。この場合、ノードで.js
拡張子が追加され、ファイルが検索されます。
フォルダモジュールのロード
フォルダのパスを使用すると、次のようにモジュールをロードできます。
var myModule = require('./myModuleDir');
そうすると、Nodeはそのフォルダ内を検索します。ノードはこのフォルダがパッケージであると推定し、パッケージ定義を探します。そのパッケージ定義はpackage.json
という名前のファイルでなければなりません。そのフォルダにpackage.json
という名前のパッケージ定義ファイルが含まれていない場合、パッケージエントリポイントはindex.js
のデフォルト値を./myModuleDir/index.js
ます./myModuleDir/index.js
はパス./myModuleDir/index.js
下のファイルを./myModuleDir/index.js
。
モジュールがいずれのフォルダにも見つからない場合の最後の手段は、グローバルモジュールのインストールフォルダです。