私は英語とアラビア語の2つのビューを持っています。デフォルトのjs検証エラーメッセージはアラビア語に翻訳する必要があります。そして、私はそれを行う方法についていくつかのカスタムテキストを持っています。
私が作成したアラビア語のi18nは、PHTMLまたはPHPファイルでエコーすると正常に動作します。これは、Magento 2でもjsにそれをブリギングする方法と同じです。
誰かが私を助けて
私は英語とアラビア語の2つのビューを持っています。デフォルトのjs検証エラーメッセージはアラビア語に翻訳する必要があります。そして、私はそれを行う方法についていくつかのカスタムテキストを持っています。
私が作成したアラビア語のi18nは、PHTMLまたはPHPファイルでエコーすると正常に動作します。これは、Magento 2でもjsにそれをブリギングする方法と同じです。
誰かが私を助けて
回答:
あなたはこのようなjsエラーメッセージを翻訳することができます
require([
'jquery', // jquery Library
'jquery/ui', // Jquery UI Library
'mage/translate' // Magento text translate (Validation message translte as per language)
], function($){
$(window).load(function() {
alert($.mage.__('Enter Your message here'));
});
});
mage/translate.js
翻訳のためのMagento2の使用
これは私のために働きました:
define(
[
'mage/translate'
],
function (
$tr
) {
$tr('<your text>'),
}
);
深く掘り下げた後、magento2のローカリゼーションの概念を知りました
以下はあなたが従う必要があるものです、私のウェブサイトでは私たちは2つのビューenとar_kwアラビア語を持っています
コマンドexを実行するために必要なすべてのフレーズを取得するには
php D:\xampp\htdocs\magento2\bin\magento i18n:collect-phrases -o "D:\xampp\htdocs\magento2\app\code\Sugarcode\Test\i18n\ar_KW.csv" D:\xampp\htdocs\magento2\app\code\Sugarcode\Test
それは私のテストモジュールを間違って読み、csv Sugarcode \ Test \ i18n \ ar_KW.csvを作成します
それはすべて__('Some Text') and $.mage.__('Some Text')
jsで取得し、csvを準備します
varフォルダーを削除して実行 bin\magento setup:static-content:deploy en_US ar_KW
それはすべてのjsをjs-translation.jsonファイルと一緒に各テーマで作成します/ ex luma / ar_KW、js-translation.jsonはすべてのjs側の変換されたデータをjson形式で保持します。のみ
__を使用するとエラーがスローされるため、以下のコードに従ってください
require([
'jquery', // jquery Library
'mage/translate'
], function($,$t){
$(window).load(function() {
alert($t('Enter Your message here'));
});
});
私はjs翻訳にも同じ問題があったため、app/i18n/...
フォルダー内に新しい言語パックを作成し、キャッシュを更新しました。
JSテンプレートの翻訳の問題をご覧ください。