В Метеор, я посылаю два объекта из моей БД в качестве шаблона:Доступ шаблон помощник словарь в обработчик события Метеор
Template.myTemplate.helpers({
helper1: function() {
var object1 = this; // data context set in iron:router...path is context dependent
// modify some values in object1
return this;
},
helper2: function() {
return Collection2.find({_id: this.object2_id});
}
});
Этот шаблон также имеет обработчик событий, чтобы изменить два объекта выше. Я пытаюсь получить доступ к helper1 и helper2 сверху, но если я вызову контекст данных шаблона, я получаю доступ к немодифицированной версии объекта1. Как получить доступ к помощникам, определенным выше?
Template.myTemplate.events({
'submit form': function(event) {
event.preventDefault();
// Access helper2 object and attributes here instead of calling Collection2.find() again
}
});
Там нет никакого способа вызвать помощник с текущей общественной API. –
Peppe, вы можете это знать, но я только что обнаружил, что есть внутренний api для доступа к помощникам - Template.myTemplate .__ helpers.get ('helper'); – bgmaster
Учитывая, что это внутреннее, я предполагаю, что api может измениться в будущем, поэтому может быть не самая лучшая идея часто использовать это в вашем коде. – bgmaster