【问题标题】:How do I stay DRY with Meteor template helpers function composition?如何使用 Meteor 模板辅助函数组合保持 DRY?
【发布时间】:2016-03-14 11:27:04
【问题描述】:

我想让我的模板保持 DRY,所以我创建了一些令人惊叹的可组合函数和助手,只是意识到 Spacebars 不能很好地发挥作用。

我有 2 个函数都接受两个参数:func(a,b) 在空格键中变成 {{func a b}}

目标是计算func2(func1(a,b), c)。我认为空格键会查看每个函数和参数的数量,以便能够理解{{func2 func1 a b c}}。情况似乎并非如此。有什么想法吗?

【问题讨论】:

    标签: javascript meteor dry spacebars function-composition


    【解决方案1】:

    在 Javascript 中没有参数数量之类的东西。您可以定义没有显式参数的函数:

    var f = function() {
      return arguments[0] + arguments[1] + arguments[2];
    };
    

    然后用你喜欢的参数调用它:

    f(1,2,3,4,5,6,7,8);
    

    由于空格键最终被翻译成 Javascript,它们继承了这种行为。

    遗憾的是,目前没有简单的方法可以实现您想要的。你需要更多的功能。可能最简单的解决方案是定义 func2reverse 并使用相反的参数顺序调用它:{{func2reverse c func1 a b}}

    【讨论】:

    • 啊。我喜欢那个解决方案。有点令人沮丧,但至少它有效
    猜你喜欢
    • 1970-01-01
    • 2014-11-20
    • 2013-05-12
    • 1970-01-01
    • 1970-01-01
    • 2011-07-04
    • 2014-10-18
    • 2016-01-08
    • 1970-01-01
    相关资源
    最近更新 更多