首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在自己编写的HandlebarsHelper上绑定?

在自己编写的HandlebarsHelper上绑定?
EN

Stack Overflow用户
提问于 2014-08-07 22:50:33
回答 2查看 31关注 0票数 0

我正在尝试添加国际化能力到我的网站。

我已经编写了我自己的I18n.js,它使用DS.store之外的转换对象,而不是它自己的(所以有一个转换模型,Ember在应用程序启动时预加载它)。

为了将我的翻译转换成模板,我编写了这个handlebars helper

代码语言:javascript
复制
Ember.Handlebars.registerHelper('i18n', function(key) {
    return Application.I18n.t(key);
});

因此,我可以像这样轻松地使用它:

代码语言:javascript
复制
{{i18n example_key}}

到目前为止,一切都很完美。但屏幕上可见的翻译并不绑定到它的翻译模型。

如果我更改了管理页面中的翻译,我必须重新加载页面。

是否可以在帮助器和帮助器必须显示的转换模型之间添加绑定?

谢谢

EN

回答 2

Stack Overflow用户

发布于 2014-08-07 22:58:07

使用registerBoundHelper而不是registerHelper。我甚至不认为registerHelper是公共API的一部分。

票数 0
EN

Stack Overflow用户

发布于 2014-08-08 15:22:16

Application.I18n到底是什么样子的?为了使{{i18n}}帮助器在发生变化时刷新其内容,它需要观察可观察到的内容。

如果您传递具有可观察属性的对象(请参见http://emberjs.com/guides/templates/writing-helpers/#toc_dependencies),则Ember.Handlebars.helper非常有用。但是,如果只将键作为字符串传递,则必须以某种方式自行设置绑定。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25185596

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档