我正在使用Rails的js-routes,并希望将它与Ember.js结合使用。我写了一个助手来从js-routes提供的全局路由中获取路由,但我似乎无法让它工作。
用法: {{route 'user_path' user.id}}
预期回报: /users/123
尝试1:
Ember.Handlebars.registerHelper('route', function(path, id) {
console.log(path); // returns the path as a string --> OK!
console.log(id); // returns the string 'user.id' --> Not ok!
return Routes[path](id);
});
尝试2:
Ember.Handlebars.registerBoundHelper('route', function(path, id) {
console.log(path); // returns undefined --> Not OK!
console.log(id); // returns 123 --> OK!
return Routes[path](id);
});
我怎样才能做到这一点?谢谢!
答案 0 :(得分:1)
没关系,我自己找到了:
Ember.Handlebars.registerBoundHelper('route', function(context, options) {
return Routes[options.hash.path](context.id);
});
用法:{{route this path='user_path'}}