【问题标题】:Node.js express 3Node.js 快递 3
【发布时间】:2012-05-24 01:23:38
【问题描述】:

我想把休闲放在一个助手中,但我在我的 app.js 中得到并需要它。我当前的错误是应用程序未定义。我是 node.js 的新手,所以如果这很简单,请不要对我太苛刻。

app.locals.use({flashMessages: function(req, res) {
var html = ""
  , flash  = req.flash();
['error', 'info'].forEach(function(type) {
  if(flash[type]) {
    flash[type].forEach(function(message) {
      html += "<div class='alert " + type + "'>" + message + "</div>";
    });
  }
});
return html; }});

【问题讨论】:

    标签: node.js express


    【解决方案1】:

    您应该将其转换为接受 app 参数的函数,或者您可以将 app 放入 GLOBAL。见node.js global variables?

    【讨论】:

    • 那一点都不清楚。我不知道该怎么做或如何处理你所说的。
    • @Vartan Arabyan 您的问题是,当您将此代码移动到新文件时,您将丢失对 app.xml 的引用。所以我要说的是,您可以将此代码转换为可以在已知应用程序的上下文中调用的函数,也可以将应用程序放入全局变量中,以便在新文件的上下文中您可以仍然访问应用程序
    • 你能给我一个使它成为函数的例子吗?
    • 用函数 my_code() {}; 包围你的代码,将该函数放在定义 app 的同一个文件中,并在定义 app 后调用函数 (my_code();) .
    • 当然,这是非常糟糕的做法,但却是最直接的做法。
    猜你喜欢
    • 1970-01-01
    • 2011-07-05
    • 2019-04-22
    • 2014-10-09
    • 2011-05-19
    • 1970-01-01
    • 2013-06-14
    • 2017-10-22
    • 1970-01-01
    相关资源
    最近更新 更多