NPMパッケージを開発中です。アプリケーションルートからモジュールを要求する必要があります。これを、ユーザーがアプリケーションルートに配置するプロパティーモジュールを必要とするパッケージと考えてください。NPM - アプリケーションのルートへのパス
アプリケーションのルートへのパスを取得するにはどうすればよいですか?
UPDATE:パラメータとしてapp
を取得します
app.use(express.router(myNPMModule.router));
ルータ機能:
私がやろうとしています何を要約すると、急行は、あなたがこのような何かを行うことができます。アイデアは、ユーザーが別々のファイルにルートを指定できるようにすることであり、コントローラーを/controllers
フォルダーに置くなどの特定の規則に従う必要があり、モジュールがパスを動的に解析して正しい方法を呼び出すことができるようになります正しいモジュールで私はすでに動作していますが、NPMでパッケージ化すると、アプリケーションのパスにアクセスできなくなるため、コントローラモジュールのメソッドを動的に呼び出すことはできません。
代わりに、ユーザーがプロパティで「コンストラクタ」(またはあなたが持つ機能)を呼び出させるようにしてはいけません。 – alessioalex
他の回答に私のコメントを見てください。私はルーターを書いていますが、ユーザーが特定の規則に従うことを期待しています。コントローラーを "controllers/moduleName.js"に入れて、URLに基づいて正しいコントローラーとメソッドを呼び出すことができます。 – jeffreyveon
私が書いたnpm [rainbow](https://npmjs.org/package/rainbow)を試してみてください。これは、コントローラのファイルパスにURLをマッピングするための要件と同じルータミドルウェアです。 – mytharcher