我正在考虑在我的下一个node.js项目中使用Express框架.然而,对我来说,一个绊脚石是没有像大多数其他非基于Sinatra的框架那样的路由生成,例如Django,Flask,Rails等.
我尝试寻找一些Connect中间件来完成我的任务,我确实找到了Barista,Escort,Sherpa等等,但是看着他们的GitHub页面,所有这些都显得已经死亡并且处于活跃状态.所以,我不想因为显而易见的原因而去找那些不再维护的东西.
我主要担心的是项目可能会变得非常大,每当业务和/或美学要求发生变化时,更新每个页面中的URL都会很麻烦.
有没有我在文档/测试中看不到的东西?如果没有,那么如何在Express中扩展路由框架以生成URL并使我的视图和控制器功能中的包装器可用?
更新:(22/3/2012)我找到了这个页面:https://github.com/clyfe/tweet_express/wiki/TODO,它指定了一些做URL生成的路由器,偶然发现了也可以与express接口的护送路由器.
我正在使用Express JS,我想要一个类似于Django reverse
功能的功能.所以,如果我有一条路线,例如
app.get('/users/:id/:name', function(req, res) { /* some code */ } )
Run Code Online (Sandbox Code Playgroud)
我想用一个函数作为例子
reverse('/users/:id/:name', 15, 'John');
Run Code Online (Sandbox Code Playgroud)
甚至更好
reverse('/users/:id/:name', { id : 15, name : 'John' });
Run Code Online (Sandbox Code Playgroud)
这将给我的网址/users/15/John
.这样的功能存在吗?如果没有,那么你有任何想法如何编写这样的功能(考虑到Express的路由算法)?