【问题标题】:How to use express middlewares in express-coffee如何在 express-coffee 中使用 express 中间件
【发布时间】:2013-03-26 05:36:34
【问题描述】:

所以我尝试将express-coffeeexpress-form 中间件一起使用,并且我正在遵循建议的控制器结构。

在 channels.coffee(控制器)中我有

module.exports =
    ..
    create: (req, res)->
      form(
        filter('title')
          .trim()
          .required()
      )
      console.log 'after filter'
      if form.isValid
        console.log 'isValid'
      else
        console.log req.form.title
      console.log req.form.title
      res.send 'finished'

最后,这不会像它应该的那样拦截动作。在这种情况下,您如何将 express 中间件连接到操作?

【问题讨论】:

    标签: node.js express coffeescript


    【解决方案1】:

    您在处理程序中调用中间件,而它应该用作路由的参数。

    在 JS 中,它看起来像这样:

    var channels = require('./channels');
    app.get('/', form(...), channels.create);
    

    如果你想把中间件和你的处理程序放在一起,你可以试试这个(仍然是 JS,我的 CS 充其量是生锈的;):

    // channels.js
    module.exports = {
      create : [ form(...), function(req, res) {
      }]
    };
    // app.js
    var channels = require('./channels');
    app.get('/', channels.create);
    

    【讨论】:

    • 是否有可能将其移至 channels.create 中?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2022-08-22
    • 2013-09-03
    • 2021-03-13
    • 1970-01-01
    • 2014-10-12
    • 2017-07-11
    • 2015-01-31
    相关资源
    最近更新 更多