/ / express / node.js - Comment passer des paramètres de route à d'autres fichiers? - javascript, node.js, express

express / node.js - Comment passer des paramètres de route à d'autres fichiers? - javascript, node.js, express

Rencontré un bug étrange où si j'ai un itinéraire défini comme tel dans routes / posts / index.js:

router.use("/:id/edit", require("./edit"));

Dans ./edit, le noeud final est défini comme suit:

router.post("/", passport.authenticate("jwt", { session: false}), function(req, res){

Si je frappe / posts /: id / edit, je réussis à atteindre le noeud final dans ./edit, mais const id = req.params.id; sera indéfini. Cependant, si je définis directement la route dans routes / posts / index.js, req.params.id sera défini.

Quelle est la bonne façon de laisser la route dans ./edit "reconnaître" le paramètre id?

Réponses:

2 pour la réponse № 1

Vous pouvez fusionner les paramètres du routeur parent en passant {mergeParams: true} à express.Router().