Search code examples
meteoriron-router

shorter preventDefault() with iron:router when using pathFor


I use the meteor package iron:router to route my templates. I tested my code in the browser and I see no reload when I click links. When I run my code on mobile the page is reloading. I know that I can disable this via a helper like:

Template.mytemplate.helpers({
      myhelper: function(e){
      e.preventDefault();
}
});

to keep my code simple I don't would like to create helpers for every template where I use links with:

<a href="{{pathFor: 'myroute'}}">mylink</a>

Is there a easy way to handle this to minimalize redundant code?


Solution

  • You don't need to write the same helper in every template. You can reuse one for all templates:

    Template.registerHelper('preventDefault', function(e) {
      e.preventDefault();
    });