ember/emberjs-bootstrap TextField ラベルで i18n を使用する方法はありますか。
例えば
{{view "Bootstrap.Forms.TextField" valueBinding="account.email" label={{t 'account.email'}}}}
これは機能しませんが、i18n をサポートしたい各要素を拡張する必要なく、Handlebars 構文を介して可能であれば何かを探しています。
ember/emberjs-bootstrap TextField ラベルで i18n を使用する方法はありますか。
例えば
{{view "Bootstrap.Forms.TextField" valueBinding="account.email" label={{t 'account.email'}}}}
これは機能しませんが、i18n をサポートしたい各要素を拡張する必要なく、Handlebars 構文を介して可能であれば何かを探しています。
すでにEmber-i18nを使用しているかどうかはわかりませんが、Ember との統合が良好であり、構築または拡張するための良い出発点になるようです。補間データを使用した簡単な例を次に示します。
<h2>{{t user.edit.title}}</h2>
<h2>{{t user.followers.title count="2"}}</h2>
そして、あなたのキーは次のように定義されています
Em.I18n.translations = {
'user.edit.title': 'Edit User',
'user.followers.title.one': 'One Follower',
'user.followers.title.other': 'All {{count}} Followers',
'button.add_user.title': 'Add a user',
'button.add_user.text': 'Add',
'button.add_user.disabled': 'Saving...'
};
私はこれを回避策として使用していますが、これはエレガントにはほど遠いものです。
{{#T frontend.signup.name}}
{{view "Bootstrap.Forms.TextField" valueBinding="account.name" label=i18Label}}
{{/T}}
Handlebars.registerHelper "T", (key, options) ->
ret = options.fn( i18Label: I18n.t(key) )
通常、一度に 1 つの文字列のケースを取得します。その他の唯一の方法は、TextField ビューを拡張することです。