web-dev-qa-db-ja.com

どのNPMモジュールが自分のモジュールに依存しているかをどのように見つけますか?

特定のモジュールがどのモジュールに依存しているかを確認するのは簡単ですが、どのモジュールが特定のモジュールに依存しているかを確認する方法がわからないようです。これを行う簡単な方法はありますか?もしそうなら、これをプログラムで行う方法はありますか?

39
Chev

更新:レジストリAPIが変更され、基盤となるCouchDBデータベースと直接通信できる場合とできない場合があります。幸い、レプリケーション用に提供されているパブリックミラーが https://skimdb.npmjs.com/registry にあり、クエリを送信できます。使用するには:

https://skimdb.npmjs.com/registry/_design/app/_view/dependedUpon?group_level=3&startkey=%5B"socket.io"%5D&endkey=%5B"socket.io"%2C%7B%7D%5D&skip=0&limit=1000

読みやすくするために、例のクエリ文字列パラメータを次に示します。

{ group_level: 3,
  startkey: '["socket.io"]',
  endkey: '["socket.io", {}]',
  skip: 0,
  limit: 1000 }

上記のように、これらはCouchDBリクエストのパラメーターであることに注意してください。このデータを取得するための公式APIのエンドポイントはないようですが、フォローできるレジストリに未解決の問題があります ここ


これを行うのに最も近いのは、おそらくnpmレジストリからJSONをリクエストすることです。たとえば、Socket.IOに依存するパッケージを取得するには、次のリンクにGETリクエストを送信します。

http://registry.npmjs.org/-/_view/dependedUpon?group_level=3&startkey=%5B%22socket.io%22%5D&endkey=%5B%22socket.io%22%2C%7B%7D%5D&skip=0&limit=1000
34
hexacyanide

たとえば、 https://www.npmjs.com/browse/depended/markdown-it のようなURLにアクセスすると、npmjs.com自体でそれらを参照できます。

22
Klortho

最近では、依存関係と依存関係を追跡する https://libraries.io/npm/socket.io もあります。

14
defsprite

dependedUponは少なくともこれらのツールによってラップされています:

npm install -g npm-static-stats dependents-tree npm-get-dependents npm-dependents

依存ツリーは、新しいパッケージをチェックアウトするのに最も便利に見えます

3
kert