Django 风格的命名路线

一个大问题是 Express 不支持有价值的命名路由。解决方案是安装支持的第三方软件包,例如 express-reverse

npm install express-reverse

将其插入你的项目中:

var app = require('express')();
require('express-reverse')(app);

然后使用它像:

app.get('test', '/hello', function(req, res) {
  res.end('hello');
});

这种方法的缺点是你无法使用 route Express 模块​​,如高级路由器使用中所示。解决方法是将 app 作为参数传递给路由器工厂:

require('./middlewares/routing')(app);

并使用它像:

module.exports = (app) => {
    app.get('test', '/hello', function(req, res) {
      res.end('hello');
    });
};

你可以从现在开始弄清楚如何定义函数以将其与指定的自定义命名空间合并并指向适当的控制器。