【问题标题】:Routes folder in ExpressExpress中的Routes文件夹
【发布时间】:2013-01-05 03:05:45
【问题描述】:

当你创建一个 Express 应用程序时,你会得到一个路由文件夹。所有路由都在 app.js 文件中注册。然而,发生的逻辑位于路由文件夹的文件中。这是其他框架中控制器文件夹的同义词吗?这是您应该添加请求/响应逻辑的位置吗?

【问题讨论】:

    标签: javascript node.js express


    【解决方案1】:

    是的,与控制器文件夹类似。 IMO,您最好使用不同的文件,就像使用另一种语言的控制器一样,因为当应用程序变得越来越大时,当所有请求/响应逻辑都在同一个文件中时,很难理解代码。

    例子:

    app.js:

    var express = require('express'),
        employees = require('./routes/employee');
    
    var app = express();
    
    app.get('/employees', employees.findAll);
    app.get('/employees/:id', employees.findById);
    
    app.listen(80);
    

    routes/employee.js:

    exports.findAll = function(req, res) {
        res.send([{name:'name1'}, {name:'name2'}, {name:'name3'}]);
    };
    
    exports.findById = function(req, res) {
        res.send({id:req.params.id, name: "The Name", description: "description"});
    };
    

    【讨论】:

    • 我认为主要区别在于其他框架可能使用文件夹层次结构来定义哪些控制器响应哪些路由。在 express 中,该文件夹只是转储路由定义以清理代码的地方。
    猜你喜欢
    • 1970-01-01
    • 2015-06-01
    • 2018-05-25
    • 2014-05-24
    • 2022-11-10
    • 2018-03-08
    • 2015-01-24
    • 1970-01-01
    • 2020-06-25
    相关资源
    最近更新 更多