Sto cercando di creare un helper personalizzato usando Meteor. In seguito al documento qui: https://github.com/meteor/meteor/wiki/HandlebarsCome utilizzare più parametri in un helper del manubrio con meteora?
ho cercato di definire il mio aiuto come segue:
Template.myTemplate.testHelper = function(foo, bar, options) {
console.log(foo);
console.log(bar);
}
mio modello si presenta come:
<template name="myTemplate">
{{#testHelper "value1" "value2"}}
{{/testHelper}}
</template>
Guardando la mia uscita della console, mi aspettavo di vedere 2 righe di output:
value1
value2
Tuttavia il mio console è simile a:
value1
function (data) {
// don't create spurious annotations when data is same
// as before (or when transitioning between e.g. `window` and
// `undefined`)
if ((data || Handlebars._defaultThis) ===
(old_data || Handlebars._defaultThis))
return fn(data);
else
return Spark.setDataContext(data, fn(data));
}
Nota, sono completamente nuovo alla meteora e al manubrio. Penso che sarei molto più contento di usare il trattino basso, ma la documentazione per la meteora getta uno sguardo quasi totale sul carattere di sottolineatura. Sto facendo qualcosa di sbagliato nel definire la mia funzione di aiuto? Sembra che non veda il secondo parametro "bar", e invece lo interpreti come opzioni. (Nota: se console.log (opzioni) restituisce 'undefined').
Meteor versione 0.4.0 (8f4045c1b9)
Questo non è valido se è necessario un helper di stile {{# if}} Content {{/ if}}. – Donflopez
uno può combinare gli helper in tale scenario: '{{# testfarfetto" v1 "" v2 "}} alcuni Template {{/ if}}' – Matanya
Dove si suppone che venga messo il 'Handlebars.registerHelper'? –