1

翻訳を処理するためのカスタム セットアップがあり、ビルド時に翻訳を抽出してダウンロードし、実行時に翻訳を置き換えます。基本的に、babel プラグインを使用して翻訳タグを抽出し、すべてのタグを取得したら、言語ごとにそれらを含むファイルを生成します。

  <Trans
    tag="tag_name"
    variables={{
      var1,
      var2
    }}
  />

このようなタグのリストを生成します

[
  {
    "tag": "tag_name"
  }
]

次に、言語ごとにタグの値が取得されます。翻訳値は現在、各タグの JavaScript 関数です。現在、アプリ全体の言語ごとに 1 つの翻訳バンドルを生成しています。

ただし、このソリューションは大きな翻訳バンドルにつながるため、スケーラブルではありません。したがって、これをバンドル/チャンクで分割します。

これを解決するために、チャンク/バンドルに翻訳データを含めたいと考えています。コードを調べて翻訳タグを抽出し、どのタグがどのチャンクに属しているかを調べます。このためoptimizeTreeに、コンパイルでフックにフックするプラグインを作成しました。

この後、それらをそれぞれのチャンクに追加し、コードに含めます。

このために、いくつかの問題に直面しています。

  • 各言語のビルド プロセスを再度回避する方法はありますか? 基本的に、チャンク/バンドルが生成されたら、それに翻訳データを追加できますか? 言語ごとに 1 つのチャンクを生成したいと考えています。そのため、言語ごとにチャンク内のコードを「n」回コピーする必要があります。最適化された方法でこれを行うにはどうすればよいでしょうか。

  • ファイルへのインポートが解決されて翻訳済みファイルがインポートされることを確認するにはどうすればよいですか?

4

0 に答える 0