国際化をサポートする必要があるプロジェクトに取り組んでいます。私たちが考えた解決策は次のとおりです。
- 言語のプレースホルダーを含む HTML テンプレートを作成します (つまり、home.html)。
- 「language_en_GB.json」などのファイルを含む i18n ディレクトリを作成します。
- ビルド プロセスでそれらをマージして、出力 HTML を作成します。出力ファイルは、言語ベースのディレクトリ (「views/en_GB/home.html」や「views/fr_CA/home.html」など) に置かれます。
だから基本的にこれ:
<h1>{{i18n_welcome}}</h1>
<h2>{{userName}}</h2>
これと合併:
{
welcome:"Welcome!"
}
ビルドプロセス中にこれになります:
<h1>Welcome!</h1>
<h1>{{userName}}</h1>
いくつか質問がありますので、ご意見をお聞かせください。
- これは i18n の良いアプローチですか?
- その国際化をうまく処理するテンプレートエンジンを知っていますか?
- クライアント側の「ベーキング」の解決策はありますか。UI開発者もローカライズできるようにしてほしいです。