Search code examples
javascripttemplatesmeteormeteor-blazemeteor-helper

Meteor using Template.registerHelpers failed to find function


I write meteor 1.2.1 registerHelper function like:

Template.registerHelper('UserisRole',
function(user, role){
if (user.roles[Roles.GLOBAL_GROUP].indexOf(role)>-1)
  return true;
else {
  return false;
  }
});
...
...
Template.TableActionBtns.events({

'click #btnRemove': function(){
var tmpuser=Meteor.user();
    if (UserisRole(tmpuser,'admin')) {     //error happens for UserisRole is not defined
  Accounts.users.remove({id:this._id});
        //Session.set("albumID", this._id);

    } else {

        var title = "Remove not allowed";

        var msg = "Please login as admin to remove it";

        toastr.warning(msg, title);

    }

}});

I register the UserisRole function before, why the meteor template is still can not find the function I register above?


Solution

  • You helper loading befor template or something like that.

    Search on stack for meteor project directory structure.

    • meteor project dir

      -client - dir

      • has a lib subdir

    you can place you javascript in meteor project folder, in client folder and in lib folder. The result will be different.