Доступ к Template.TemplateName.helpers из Template.helpers и наоборот

Есть ли способ получить доступ к экземпляру шаблона из глобального помощника и наоборот?

/lib/route.js (с железным маршрутизатором):

Router.route('/', {name: 'home.view', controller: 'homeController'});
homeController = RouteController.extend({
    template: 'home',
    waitOn: function () {
      Meteor.subscribe("Person", Meteor.userId());
    },
    data: function () {
        // return some data;
    }
});

homeController.helpers({
   templateInstanceHelper: function () {
      // Access a "global" helper here
   }
});

/клиент/helpers.js:

Template.helpers("globalHelper", function () {
   // Access the template instance helper here
});

person Aaron    schedule 15.11.2014    source источник


Ответы (1)


Рассматривали ли вы вместо этого определение глобального метода? Вместо регистрации в Meteor Templates просто определите его как

globalHelperFunc = function(templateVar) {
   // do work
}

Обратите внимание, что это должно быть в папке «lib», поэтому, возможно, (/lib/helpers.js)

Ссылка: Глобальная функция для помощника шаблона Meteor

person yifanwu    schedule 15.11.2014
comment
Спасибо. Но мне нужен доступ к данным подписки Person экземпляра шаблона. Мне нужно, например, количество коллекции Person, в некоторых случаях мне нужна фактическая запись, и мне нужно присвоить запись Person контексту #with внутри самого шаблона. - person Aaron; 15.11.2014