Ember.js / Ember-i18n:是否可以在Handlebars模板中迭代翻译文件中的属性?

时间:2016-07-05 22:56:30

标签: javascript ember.js handlebars.js ember-i18n

我们说我有以下翻译代码:

languageOptions: {
  en: {
    code: "en"
    displayName: "English"
  },
  es: {
    code: "es"
    displayName: "Español"
  }
}

我希望在我的Handlebars模板中迭代languageOptions中的属性。我也使用了ember-i18n插件。有没有办法做我喜欢做的事情? (不幸的是,下面的代码不起作用。)

{{#each-in (t 'languageOptions') as | language | }}
    {{language}}
{{/each-in}}

3 个答案:

答案 0 :(得分:0)

我认为简单的{{each}},从循环中翻译文本,应该可以为您提供所需的结果。

{{#each languageOptions as |language|}}
    {{t language.displayName}}
{{/each}}

答案 1 :(得分:0)

你不能这样使用。因为t助手返回字符串。您需要创建一个帮助程序以从您的翻译文件中返回普通对象

答案 2 :(得分:0)

查看此Wiki页面(https://github.com/jamesarosen/ember-i18n/wiki/Example:-Language-Chooser),它会显示如何执行您的操作...