次を含むモーダル ダイアログ コンポーネント テンプレートがあります。
<div class="header">
{{t title}}
</div>
そのため、ember-i18n [1] ライブラリを使用して、ember にローカライズを追加しています。今、実際のモーダル ダイアログ テンプレートからそのコンポーネント テンプレートを呼び出しています。
{{#modal-dialog title="dialog.title"}}
<h3 class="flush--top">I am a modal dialog</h5>
<button {{action "close"}}>Done</button>
{{/modal-dialog}}
ここで行おうとしているのは、ダイアログ テンプレートでローカライズに使用されるキーを定義することです。このキーは、コンポーネント テンプレートに渡されてそこで翻訳されます。ただし、これにより次のエラーが発生します: Missing translation: title
. そのため、変数 title は実際には変数としてではなく文字列として扱われているようです。
または、ダイアログ テンプレートのタイトルを翻訳して、コンポーネント テンプレートに渡すこともできます。
ダイアログ:
{{#modal-dialog title={{t "dialog.title"}} action="close"}}
これにより、コンパイラ エラーが発生します。
Error: Parse error on line 1:
...#modal-dialog title={{t "dialog.title"}}
-----------------------^
Expecting 'STRING', 'INTEGER', 'BOOLEAN', 'OPEN_SEXPR', 'ID', 'DATA', got 'OPEN'
これを実現する方法はありますか?