用自定义方法扩展ExpressJS / Response对象的正确方法是哪种?

埃里克

现在,我通过中间件来扩展请求对象:

function(req, res, next) {
  res.customMethod = function() {

  }
  next();
}

但是我认为由于对res.prototype名称空间的污染,这是不正确的。有谁知道更好的方法,或者expressjs4已经对此有任何方法?

哑光

您的方法几乎是完美的,但正如您所说的那样,最好避免污染res名称空间:要实现您的目标,您可以使用为此设计res.locals属性。接下来是一个片段,我将应用程序的翻译程序附加到响应对象上。

app.use(function(req, res, next){

      function Translator (lang) {        
          this.lang = lang ? lang : 'it';

          this.translate = function (sentence) {    
              var d = dictionaries.get;

              var translation = d[this.lang] ? d[this.lang][sentence] : d['it'][sentence];          
              return translation ? translation : sentence;
          };                  
          this.setLang = function (l) {
              this.lang = l;
          };
      };

      res.locals.translator = new Translator();
      next();
});

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

对象属性的自定义扩展方法以返回DefaultValue

来自分类Dev

Kotlin对象。哪种初始化方法是正确的?

来自分类Dev

扩展Codeigniter异常类以添加自定义方法

来自分类Dev

KendoUI列中心自定义MVC扩展方法

来自分类Dev

扩展AbstractTableModel中的自定义setValueAt方法

来自分类Dev

自定义Nullable <T>扩展方法和SelectMany

来自分类Dev

无法在扩展的Magento模型中调用自定义方法

来自分类Dev

如何使用自定义查询方法扩展水线?

来自分类Dev

如何使用自定义内容扩展超类的方法

来自分类Dev

负责编写自定义扩展方法 .Add、.Remove 等

来自分类Dev

用Jade评估自定义javascript方法(CircularJSON)

来自分类Dev

用Java编写自定义异常名称的最佳方法

来自分类Dev

用自定义TextWriter重写Render方法

来自分类Dev

用自定义方法进行雄辩的查询

来自分类Dev

用Java编写自定义异常名称的最佳方法

来自分类Dev

用自定义TextWriter重写Render方法

来自分类Dev

用Jade评估自定义javascript方法(CircularJSON)

来自分类Dev

标记瞬态的正确方法是哪种?

来自分类Dev

如何向自定义对象列表添加扩展方法以将它们转换为新列表

来自分类Dev

创建自定义Segue的正确方法

来自分类Dev

创建自定义Segue的正确方法

来自分类Dev

绘制自定义视图的正确方法?

来自分类Dev

如何处理/解决方法-隐匿托管自定义扩展器/列表的自定义ListBoxItem

来自分类Dev

比较方法中的自定义对象

来自分类Dev

对自定义对象使用Contains方法

来自分类Dev

iOS用自定义Xib和View覆盖initWithFrame的正确方法?

来自分类Dev

用自定义“世界”矢量更新“前部”矢量的正确方法是什么?

来自分类Dev

在 Spring MVC 中构建域对象的哪种方法更正确?

来自分类Dev

使用自定义方法扩展数组,该方法按值删除元素

Related 相关文章

  1. 1

    对象属性的自定义扩展方法以返回DefaultValue

  2. 2

    Kotlin对象。哪种初始化方法是正确的?

  3. 3

    扩展Codeigniter异常类以添加自定义方法

  4. 4

    KendoUI列中心自定义MVC扩展方法

  5. 5

    扩展AbstractTableModel中的自定义setValueAt方法

  6. 6

    自定义Nullable <T>扩展方法和SelectMany

  7. 7

    无法在扩展的Magento模型中调用自定义方法

  8. 8

    如何使用自定义查询方法扩展水线?

  9. 9

    如何使用自定义内容扩展超类的方法

  10. 10

    负责编写自定义扩展方法 .Add、.Remove 等

  11. 11

    用Jade评估自定义javascript方法(CircularJSON)

  12. 12

    用Java编写自定义异常名称的最佳方法

  13. 13

    用自定义TextWriter重写Render方法

  14. 14

    用自定义方法进行雄辩的查询

  15. 15

    用Java编写自定义异常名称的最佳方法

  16. 16

    用自定义TextWriter重写Render方法

  17. 17

    用Jade评估自定义javascript方法(CircularJSON)

  18. 18

    标记瞬态的正确方法是哪种?

  19. 19

    如何向自定义对象列表添加扩展方法以将它们转换为新列表

  20. 20

    创建自定义Segue的正确方法

  21. 21

    创建自定义Segue的正确方法

  22. 22

    绘制自定义视图的正确方法?

  23. 23

    如何处理/解决方法-隐匿托管自定义扩展器/列表的自定义ListBoxItem

  24. 24

    比较方法中的自定义对象

  25. 25

    对自定义对象使用Contains方法

  26. 26

    iOS用自定义Xib和View覆盖initWithFrame的正确方法?

  27. 27

    用自定义“世界”矢量更新“前部”矢量的正确方法是什么?

  28. 28

    在 Spring MVC 中构建域对象的哪种方法更正确?

  29. 29

    使用自定义方法扩展数组,该方法按值删除元素

热门标签

归档