【问题标题】:Meteor Handlebars: What is the proper way in a condition to compare two variables?Meteor Handlebars:比较两个变量的正确方法是什么?
【发布时间】:2014-03-28 03:16:12
【问题描述】:

我想不出在带有 Meteor 和 Handlebars 的模板中执行此类操作的方法:

{{#if var1 == var2}}
{{/if}}

我还设置了Meteor Handlebars Helpers,这似乎也不起作用while it should

{{#if $eq var1 var2}}
{{/if}}

那么,在模板中将两个变量与 Handlebars 进行比较的正确方法是什么?

编辑:事实上,这似乎超越了 Handlebar 意识形态,即 there should be no logic in templates

【问题讨论】:

  • Handlebars 已被弃用,如果您使用 Handlebars 助手,您将无法升级到较新版本的 Meteor。请参考 0.8 rc 公告和文档。
  • 感谢您提供此信息。对了,rc是什么意思?

标签: meteor handlebars.js


【解决方案1】:

目前这并不像您想象的那么容易。我想我已经读过这可能是流星 1.0 中的一个功能。

您有以下 3 种可能性:

html:

<template name="stuff">
  {{#if isTrue}}
    ...
  {{else}}
    ...
  {{/if}}
</template>

js:

Template.stuff.helpers({
  isTrue: function () {
    return var1 === var2;
  }
});

另一种可能性是提供自己的车把助手:

html:

{{compare "var1" "var2"}}

js:

Handlebars.registerHelper('compare', function(var1, var2) {
  return var1 === var2;
});

或者您使用其他任何已经有人为您完成工作的 Handlebars-helper 包。我不知道您使用的软件包,所以我无法就您的问题给出详细的解决方案,但也许您对如何实现这一点有一个很好的了解。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-05-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多