Метеорные рули: Как правильно в условиях сравнивать две переменные?
Я не могу придумать способ сделать что-то подобное в шаблоне с Meteor и Handlebars:
{{#if var1 == var2}}
{{/if}}
Я также настроил помощников Meteor Handlebars , и это, кажется, тоже не работает , хотя это должно :
{{#if $eq var1 var2}}
{{/if}}
Итак, каков ваш правильный способ сравнить две переменные с рулями в шаблоне?
EDIT: на самом деле, это, кажется, выходит за рамки идеологии руля, которая заключается в том, чтоне должно быть никакой логики в шаблонах .
1 ответ:
На данный момент это не так просто, как вы могли бы представить. Я думал, что читал, что это, возможно, особенность в meteor 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, где кто-то уже сделал работу за вас. Я не знаю, какой пакет вы использовали, поэтому не могу дать подробную информацию. решение вашей проблемы, но, возможно, вы получите хороший взгляд на то, как это может быть реализовано.