我是NodeJS和Express从PHP迁移的新手。我一直在关注如何使用Express构建Web应用程序的在线教程,它一直让人大开眼界。所以我决定只使用JavaScript来开发一个项目。问题是在快递中添加了一些路线定义后,我无法跟踪我的快车路线,并担心随着时间的推移会变得更大。目前我有近45行(是的,我有很多路线,有些提供HTML模板文件,其他只是为我的Angular前端返回JSON)。在它失控之前有没有更好的方法来管理它?
答案 0 :(得分:2)
组织路径的一种可能方法是基于功能的路由组,然后为这些组创建单独的模块,然后将这些模块导入主应用程序文件(app.js或server.js)。例如,我正在开发一个具有交易功能,现金存款功能以及其他一些常见任务的项目。因此,我为这些路由创建了不同的模块,并将它们放在一个名为routes的单独目录中。
例如,我有一个名为site.js的模块用于所有常见任务。
module.exports = function(express,app,passport,router){
router.get('/auth/facebook',passport.authenticate('facebook'));
//other commin routes
};
在我的app.js文件中,我声明了路由器,然后传入包含路由的模块。
var router = express.Router();
app.use('/',router);
require('./routes/site.js')(express,app,passport,router);
答案 1 :(得分:0)
如果您使用的是Express版本4,我编写了一个模块来处理路径更清晰的路径。结帐Exroute Module是否符合您当前的需求,如果没有,请提供一些反馈。