javascript - How Do I Use a Meteor Template Helper to Edit a Value Passed as a Parameter in Iron-Router? -
how use template-helper edit value of parameter passed route created using pathfor
method of iron-router???
i have template-helper:
template.registerhelper('slugify', function(obj){ return _.slugify(obj); });
in .html file have this:
{{#each menuitemsfromdb}} {{#each arrayofmenuitems}} <a class="item category" href=""> {{this}} </a> {{/each}} {{/each}}
the {{this}}
in above code returns string, name of category. because have registered template helper, can slugify category by:
{{slugify this}}
and have route:
this.route('list',{ path: '/list/:category_slug', template: 'list', controller: 'listcontroller' });
i can link route , pass parameter route by:
{{pathfor 'list' category_slug='the-value-i-passed'}}
but hard-coding cannot achieve desired result want.
want dynamic using 'slugify'
template helper , iron-router's pathfor
method , using value of {{this}}
.
what i'm trying achieve although code below doesn't work:
{{pathfor 'list' category_slug={{slugify this}} }}
what's work around achieve i'm 'trying' achieve above line????
i hoping can like:
{{pathfor 'list' category_slug=slugify(this) }}
or
{{pathfor 'list' category_slug='{{slugify this}}' }}
long story short, you're looking not yet implemented using current syntax, although it's part of handlebars standard implementation, upon meteor spacebars based.
for moment, have create separate helper slugifies input , call within pathfor
.
js
template.mytemplate.helpers({ slugified: function(){ return _.slugify(this); } });
spacebars
{{pathfor 'list' category_slug=slugified}}
note handlebars sub-expression support planned in near future , might make way next version of meteor according pr : https://github.com/meteor/meteor/pull/4101
Comments
Post a Comment