【问题标题】:Dynamic sidebars with Node.js, Express.js and Jade带有 Node.js、Express.js 和 Jade 的动态侧边栏
【发布时间】:2012-03-13 11:30:15
【问题描述】:

我正在尝试为 Jade 编写一个 dynamicHelper,以在实际访问资源之前检查是否允许用户访问资源。我有模块来执行检查,当使用要访问的资源的 url 和用户名调用时返回 true 或 false,但我无法让助手使用参数?

虚拟视图:

if(hasAccess.check("/url", "username") == true)
  li access
else
  li no-access

助手:

app.dynamicHelpers({
  hasAccess: function() {
    return access;
  }
});

访问功能:

var access = function() {
  return {
    check: function(url, user) {
      return mymodule.hasAccess(url, user);
    }
  };
};

我尝试使用this answer 完成它,但到目前为止没有运气。

【问题讨论】:

    标签: node.js dynamic express helper pug


    【解决方案1】:

    那里有几处错误(如果我理解正确的话)

    • 您的 hasAccess 函数不接受任何参数
    • hasAccess 也只是返回对访问函数的引用,而不是调用它
    • 访问函数也不接受任何参数

    您尝试做的事情可能会使用

    app.dynamicHelpers({
      hasAccess: access().check
    });
    

    但我没有运行代码,所以我可能完全错了。

    祝你好运:)

    【讨论】:

    • 嗯,我需要jade模板(侧边栏)中的参数来定义哪些资源应该预先检查。我只是在想我是否可以在服务器上自动生成侧边栏,然后再去玉。这会让事情变得更简单......
    猜你喜欢
    • 1970-01-01
    • 2011-08-16
    • 1970-01-01
    • 1970-01-01
    • 2016-10-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多