2015-06-16 180 views
0

我想在Express上创建基于MVC的架构,以覆盖Express路由器。覆盖Express路由器

考虑以下为例:

// usual express router 
var userRouter = require('express').Router();  
userRouter.get("/",function(req, res, next){ 
    //..... 
});  
userRouter.post("/",function(req, res, next){ 
    //..... 
});  
app.use('/users', userRouter);  

//routes.js  
module.exports = function(app){ 
    var userRouter = app.Router();  
    userRouter.get('/', {controller: 'User', action: 'show'}); 
    userRouter.post('/', {controller: 'User', action: 'new'});  
    app.use('/users', userRouter); 
}; 

所以,我必须再次实现路由器就像我的控制器分析功能明确?

回答

0

重写已经存在的功能通常被认为是不好的做法。 Express可以选择通过中间件服务修改数据。

如果本地路由器和中间件功能都不适合你,那么也许你应该去改变框架到Hapi。

我判断自己的短暂经历,Hapi为路由和服务器魔法提供了更好的适应性。