Javascript 我们可以在Express.js中的路线中使用其他路线吗?

Javascript 我们可以在Express.js中的路线中使用其他路线吗?,javascript,node.js,express,routes,Javascript,Node.js,Express,Routes,所以我有index.js、userRoute和friendRoute 在index.js中 const app = express() const userRoutes = require('./routes/user') app.use('/users', userRoutes) 在/routes/user.js中,我想附加/friends路由 const friendRoutes = require('../routes/friend') router.use('/:username/fr

所以我有index.js、userRoute和friendRoute

在index.js中

const app = express()
const userRoutes = require('./routes/user')
app.use('/users', userRoutes)
在/routes/user.js中,我想附加/friends路由

const friendRoutes = require('../routes/friend')
router.use('/:username/friends', friendRoutes)
const friendRoutes = require('../routes/friend')
router.use('/:username/friends', (req, res, next) => {
    req.username = req.params.username;
    next();
}, friendRoutes);
我想要的预期结果是获取用户的好友列表
/users/:用户名/朋友

但是当我尝试点击url时,没有得到用户名参数 有没有办法达到预期的结果? 或者有没有做这类事情的最佳实践?

更新您的/routes/user.js
exports.friendRoutes = async (req, res)=>{
    const username = req.params.username;
    console.log(username)
}

// or

exports.friendRoutes = async (req, res)=>{
    const {username} = req.params;
    console.log(username)
}
const friendRoutes = require('../routes/friend')
router.use('/:username/friends', (req, res, next) => {
    req.username = req.params.username;
    next();
}, friendRoutes);
在/routes/friend.js中使用req.username获取参数值