Quiero comparar dos valores en una plantilla de Handlebars. Esto no se puede hacer con el helper {{#if}}. Entonces, ¿cómo puedo crear un nuevo helper en Discourse?
He probado el siguiente código, pero no funciona:
Archivo creado: /assets/javascripts/discourse/helpers/eq.js.es6
import { registerHelper } from 'discourse-common/lib/helpers'
var makeBoundHelper = Ember.HTMLBars.makeBoundHelper;
registerHelper('eq', makeBoundHelper(function(params) {
return params[0] === params[1];
}));
Se lanza la excepción: makeBoundHelper no es una función
Solo es EmberJS, usa una Propiedad Computada.
Quiero lograr algo como lo siguiente:
tener dos bucles each
- productCategories: [“category1”, “category2”, …]
- productTags: [{productCategory:“category1”, tagName:“tag1”, isChecked:true}, …]
Y ahora quiero comparar los elementos de productCategories con tag.productCategory como se muestra en el código.
¿Podemos lograr esto mediante propiedades computadas?
<div class="tag-list-section">
{{#each this.productCategories as |category|}}
<div id={{category}} class="select-tag-category">
{{#each this.productTags as |tag|}}
{{#if (eq category tag.productCategory)}}
{{input type="checkbox" name=tag.tagName checked=tag.isChecked }} {{tag.tagName}}
{{/if}}
{{/each}}
</div>
{{/each}}
</div>