我有一个成员-cli助手函数:翻译- i18n,我正在我的hbs模板中很好地使用它作为一个辅助助手,用于i18n翻译库。
我创建的助手将单词作为参数,只提供了一些备用情况(e.x )。如果翻译丢失,它将触发空气制动错误)。
当在hbs模板中使用时,我的助手工作非常出色,但似乎不可能从JS文件,特别是另一个助手文件中调用它。简而言之,问题是:
Ember.Handlebars.makeBoundHelper(translate);创建助手,则该助手无法使用Ember.Handlebars.helpers .所以我不能这么说。我可以看到,助手通过执行this.container.lookup('helper:translate-i18n'),而存在,但我似乎没有能力以这种方式调用该函数。export default Ember.Handlebars.registerBoundHelper('translate', translate());,我就可以从任何地方访问我的助手,但是突然之间容器没有定义,我就不能再到码头i18n (t助手),因为这一行引发了一个错误:var t = this.container.lookup('utils:t');如有任何建议/指示/意见,将不胜感激!
发布于 2015-06-09 16:57:55
如果您注册了一个车把帮手,那么您可以从JS访问它们,例如
如果你有一个叫'doSomething‘的帮手,
Ember.Handlebars.registerBoundHelper('doSomething', function (args) {
return something;
});您可以从JS调用助手,如下所示
Ember.Handlebars.helpers.doSomething(args);https://stackoverflow.com/questions/30717636
复制相似问题