問題タブ [i18next]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
handlebars.js - i18nextとハンドルバーによる変数交換
i18next.js を使用して PhoneGap / Backbone / Handlebars をローカライズすることができました。
現在、ハンドルバー式が埋め込まれたhtmlをローカライズしてハンドルバーでコンパイルする方法を考えています。例として、次のようなものが必要です。
に変わります:
ローカライズしなくても簡単です。ただし、ドキュメントに記載されている i18next テンプレートを実行します (ここ: http://i18next.com/pages/doc_templates.html )...
残念ながら、ローカライズすると次のようになります。
文字列をローカライズして埋め込み式をコンパイルするにはどうすればよいですか?
i18next - i18nextでボタンの値をどのように変換しますか?
使用する
翻訳はボタンの「>」の最後まで行います。
ボタンの値を翻訳するにはどうすればよいですか?
jquery - i18nextで使用するjquery検証をローカライズするには?
ユーザーが必要な言語(英語とクメール語)を選択できるモバイルアプリを開発しています。しかし、ユーザーが言語をクメール語に切り替えた場合、jquery 検証でエラー メッセージを翻訳する方法がわかりません。
HTML コード:
type = "input" では、メッセージが jquery 検証から来るため、翻訳できません。このファイルをクメール語に翻訳する方法がわかりません。助けてください
internationalization - Marionette.Renderer、アンダースコア テンプレート、i18next による国際化
現在、Backbone.Marionette とアンダースコア テンプレートを使用して、中規模のアプリに国際化を追加する必要があります。
徹底的な調査の結果、2 つの有効な選択肢が浮かび上がってきました。
- underscoreとの直接統合を提供しますが、フランス語と英語以外のサポートに不可欠となる複数形を欠いています。
- 強力な API を提供しますが、ハンドルバーテンプレート との直接統合のみを提供するi18next
より多くの言語にローカライズするには、より長い期間が必要になるため (うまくいけば!)、underi18n はおそらく不足し、実行可能な唯一の解決策は i18next になります。
先に進む前に、私の 2 つの質問の概要を説明し、それから私が経験した完全な背景と調査プロセスを提供します。
- i18next と Marionette を使用してテンプレートのローカリゼーションを一元化するにはどうすればよいですか
- すべてのアンダースコア テンプレートにグローバル ヘルパーを挿入するにはどうすればよいですか
テンプレートのローカライズを一元化
i18n で非常に面倒だと思うことの 1 つは、すべての onRender 関数で i18n を呼び出さなければならないことです。これは、多数の現在のビューと将来のすべてのビューのすべてに呼び出しを追加することを意味します。私が見ているように、間違っている場合は修正してください。これは次のようになります。
と何度も繰り返されます。
実装とメンテナンスの観点からこれは非常に不便だと思うので、バックボーンとマリオネットを掘り下げ始めました。過去のプロジェクトから、テンプレートをグローバルに前処理する方法があったことを思い出しました。
仕事に適したツールと思われる Marionette.Renderer に出くわしました。しかし、i18next の完全なインストールと実装に入る前に、正しい道を進んでいることを確認したいと思います。
なぜなら、underi18n がどのよう_.template(under18n.template(myTemplate, t));
にレンダラーとうまく統合され、テンプレートを前処理してローカライズするためのグローバル ソリューションを提供できるかを明確に理解できたとしても、この場合に i18next を使用する方法については確信が持てないからです。
誰もがそれを行っている例を見つけることができなかったという事実は、私も心配しています。誰もがハンドルバーテンプレートを使用するか、手動で呼び出しますか?.i18n()
各ビューで?現時点では、翻訳をバインドするための jquery 要素がないため、これがどのように可能になるかについてかなり困惑しています。
私が達成しようとしていることの例、さらなるドキュメント、または行く途中のヒントを提供するものは何でも答えていただければ幸いです!
javascript - javascriptでi18nextで翻訳を使用するにはどうすればよいですか
i18next を使用して HTML の言語を翻訳できることを知っています。例えば:
<div data-i18n="someKey"></div>
しかし、どういうわけかJSでそれを使用する方法はありますか? たとえば、次のようなことをしたい場合
alert(someKey)
?
jquery - jQuery Mobile Table Reflow ヘッダーと i18next 翻訳
jQuery Mobile Demo サイト(jQuery Mobile 1.4.2) のこのページのコードを i18next 変換ツールで使用したいのですが、モバイルでテーブルを表示するとテーブル ヘッダーが消えてしまいます。
ウィンドウが特定のしきい値よりも小さい場合、jQM はヘッダー タグ テキストを取得し、各行の値の前に配置することを理解しています。
ここでデモを作成しました。実際に表示するには、ブラウザの幅を変更してください。
上のテーブルは意図した動作をしていますが、テーブル ヘッダーのインライン テキストです。下のテーブルは、ワイド スクリーンでは i18n テーブル ヘッダーが 1、2、3、4 として正しく表示され、狭いスクリーンでは消えるという問題を示しています。
モバイル ビューのヘッダーで i18n 翻訳を使用する方法を探しています。これは、サイトの残りの部分で既に実装されており、美しく機能するためです。
ご協力いただきありがとうございます!