私たちは、このような別のファイルに複数のルートパスを整理することができ、新たな特急4ルータを使用して知っている:express.Router()とmultiple express()オブジェクトの違いは?
// In cars.js
const router = express.Router();
router.get('/brands', function(req, res) { ... });
router.get('/models', function(req, res) { ... });
module.exports = router;
// In animals.js
const routerTwo = express.Router();
routerTwo.get('/domestic', function(req, res) { ... });
routerTwo.get('/wild', function(req, res) { ... });
module.exports = routerTwo;
// In main.js
app.use('/cars', router); // matches `/cars/brands`, `/cars/models`.
app.use('/animals', routerTwo); // matches `animals/domestic`, `animals/wild`.
今、私は両方cars.js
とanimals.js
ファイルに単にexpress()
とexpress.Router()
を変更するかどうかを知りたい、それ両方ともmini-appと呼ばれるexpress()の新しいインスタンスとして機能するため、動作します。次に、新しいexpress.Router()
オブジェクトの使用は何ですか?
express.Router()
オブジェクトに公開されている同じメソッドではなく、その機能はモジュラルータハンドラなどの複数のexpress()
インスタンスで実現できますか?
同じプロジェクトの 'require( 'express')'が(nodejs docからキャッシュされて)何度呼び出されても問題ないので、不要なオーバーヘッドは無効であると思います。 –
キャッシュは、アプリケーションの作成を一度行うので、それ以上の要求はすべて速くなりますが、キャッシュされたアプリにはまだルーティングのためだけに必要ではない余分なコードがたくさんあるという事実は変わりません。 – nem035