在 Meteor 中,有没有办法使用多个助手,即使一个可以处理多个参数?

Posted

技术标签:

【中文标题】在 Meteor 中,有没有办法使用多个助手,即使一个可以处理多个参数?【英文标题】:In Meteor, Is there a way to use multiple helpers even if one can handle multiple arguments? 【发布时间】:2014-09-11 08:06:42 【问题描述】:

在我的流星项目中,我有多个助手。 helper1 可以处理多个参数,但即使只有一个参数他也很好。问题是我想将此处理程序与另一个处理程序 (helper2) 的结果链接起来,该处理程序也需要一个参数(实际的用户数据)。所以我写了以下内容:

helper1 helper2 currentUser

问题在于helper1 似乎有两个参数:helper2 的结果和currentUser,这意味着helper2 没有得到currentHelper 参数。

我尝试使用括号,这样每个人都可以得到自己的论点,就像这样:

helper1 helper2(currentUser)helper1 (helper2 currentUser)

甚至是括号:

helper1 helper2 currentUser

但是所有这些变通方法都出现语法错误。有什么可行的方法吗?

【问题讨论】:

我认为这是不可能的。如果我正确阅读了以下链接,那么第一个助手将收到其名称 github.com/meteor/meteor/blob/master/packages/spacebars/… 之后的任何内容 我认为有一种方法可以工作,因为 #if helper argument 正在工作。在这种语法中,您可以看到 if 语句也只是一个助手。看看块标签也许你可以定义你自己的。 github.com/meteor/meteor/blob/master/packages/spacebars/… 【参考方案1】:

我终于找到了解决这个问题的方法——使用#with

#with firstHelper data
  secondHelper this
/with

【讨论】:

请注意,如果firstHelper data 的结果是假的,则#with 块的内容永远不会被评估。

以上是关于在 Meteor 中,有没有办法使用多个助手,即使一个可以处理多个参数?的主要内容,如果未能解决你的问题,请参考以下文章

如何从 Meteor 模板将多个参数传递给空格键助手?

如何在模板助手中使用 Meteor 方法

我应该在路由逻辑或 Meteor 模板助手中提供数据吗?

在模板上下文中从另一个助手调用一个助手 (Meteor 0.9.4)

使输入上的 disabled 属性与 Meteor 助手反应的最佳方法是啥?

Meteor - 从子助手访问父模板变量