从另一个人那里拨打快速路线是不好的做法吗?

时间:2012-12-18 02:55:16

标签: node.js routes express

我有一条可以做很多不同事情的路线。例如:

路线档案:

exports.index = function (req, res) {
    if (x)
        exports.login(req,res);
    else
        exports.dostuff(req,res);
};

exports.login = function(req, res) {
    res.render('login');
};

exports.dostuff = function(req, res) { 
    res.render('otherfile');
};

这是不好的做法吗?是否有更好的方法来解决这种情况?感谢。

1 个答案:

答案 0 :(得分:10)

这不是一个不好的做法,但也不适合这种情况。

你可以做这样的事情来实现更好的路由解决方案。

  • 在路由器文件中配置路由并处理特定控制器中的行为。

例如这样的事情。 (router.js)

//First requiring your controller for actions
var jobController = require("../controllers/job_controller");

module.exports = function(app) {

    app.get("/jobs", jobController.getJobIndex);
    app.get("/jobs/create", jobController.createJobView);
    app.get("/jobs/update/:id", jobController.updateJobView);
    app.get("/jobs/delete/:id", jobController.deleteJob);
    app.get("/jobs/:id", jobController.getJobDetails);

    app.post("/jobs/create", jobController.createJobPost);
    app.post("/jobs/update", jobController.updateJobPost);

};

并且需要主app.js中的router.js

var router = require('./routes/router')(app)