假设父模块有一个使用
的公共请求的路由器家长模块
app.get("/speakers",...
app.get("/agenda",... etc.
和另一个通配符路由,它实际上将请求委托给子模块来处理父模块不需要知道或关心的所有嵌套操作。
app.all("/admin/*/*" //delegates task to another module
子模块
子模块接收管理员请求但是它必须处理所有uri,路由和参数
像
/admin/login
/admin/dashboard/events
/admin/dashboard/events/1 //could go deeper
如何在此嵌套级别进行另一级路由解析或引擎?
答案 0 :(得分:2)
您可以将管理路由组织为一个单独的模块,如下所示:
<强> /routes/admin.js 强>
var login = function(req, res, next) {
res.end();
}
// etc...
module.exports = express.Router()
.post('/login', login)
.get('/dashboard/events', listEvents)
.get('/dashboard/events/:id', findEvent);
然后在 app.js :
中var admin = require('./routes/admin');
app.use('/admin', admin);
请注意,您在管理路由中定义的路由都将相对于您指定为app.use
的第一个参数的根目录。