我想在客户端使用 Handlebars 和Ruby的 i18n-js gem(在Rails 3应用程序上)翻译我的i18n密钥。据你说,什么可能是这样的Handlebars助手?
根据目前的Handlebars版本,默认帮助器如下所示:
Handlebars.registerHelper('if', function(context, options) {
var type = toString.call(context);
if(type === functionType) { context = context.call(this); }
if(!context || Handlebars.Utils.isEmpty(context)) {
return options.inverse(this);
} else {
return options.fn(this);
}
});
Handlebars.registerHelper('unless', function(context, options) {
var fn = options.fn, inverse = options.inverse;
options.fn = inverse;
options.inverse = fn;
return Handlebars.helpers['if'].call(this, context, options);
});
Handlebars.registerHelper('with', function(context, options) {
return options.fn(context);
});
Handlebars.registerHelper('log', function(context) {
Handlebars.log(context);
});
关于i18n-js宝石,它似乎是一个很好的组合。例如,这个lib在Ember.js中使用(如ember-i18n)。是否已经有关于Handlebars.js和i18n的最佳实践?
感谢您提出任何建议。