1. ホーム
  2. node.js

[解決済み] node.JSで、requireでロードしたモジュールのパスを取得するにはどうしたらいいですか?

2022-05-18 13:38:57

質問

私はnpm経由でインストールされたモジュールを必要とします。私はそのモジュールに従属する.jsファイルにアクセスしたい(私はその中のConstructorメソッドをサブクラス化することができるように)。私はモジュールのコードを修正することはできません(まあ、したくありません)ので、その__dirnameを抽出する場所を持っていません。

私は次の質問を知っていますが、それはコード制御が可能なモジュールのパスを取得することです (したがって、__dirname が解決策となります)。 Node.jsでは、どのように私は `this` モジュールのパスを知ることができますか?

~~~

さらに良いのは、モジュールのロードされたモジュール情報を取得することです。

どのように解決するのですか?

私があなたの質問を正しく理解するならば、あなたが使用する必要があります。 require.resolve()を使用する必要があります。 :

モジュールの場所を調べるために内部の require() 機械を使いますが、 モジュールをロードするのではなく、単に解決されたファイル名を返します。

var pathToModule = require.resolve('module');