バニラJSの使用

コアエンジンは実行時の動作を提供します。あなたのアプリがそれをどのように表示するかを決定します。

エリアごとのコンテキスト

エンジンにデフォルトのコンテキストを設定し、必要に応じて特定の呼び出しのためにそれをオーバーライドします。

ts
const エンジン = create18waysEngine({
  apiKey: 'YOUR_18WAYS_PUBLIC_API_KEY',
  baseLocale: 'ja-JP',
  locale: 'fr-FR',
  context: 'app',
});
 
const payNow = await engine.t('Pay now', {
  context: 'checkout.button',
});

変数は同じように機能します

ts
const line = await engine.t('こんにちは {name}', {
  vars: { name: 'Ada' },
);

同じwaysParser構文はReactでもここでも機能します。

キャッシュの動作

エンジンはメモリ内に翻訳ストアを保持します。

つまり:

  • 新しい文字列またはロケールの最初のリクエストはAPIにヒットする可能性があります
  • 後のリクエストはストアから提供されることがあります
  • 以前のロケールに戻るのは、翻訳がすでにキャッシュされている場合は安価です。

自分のロケールコントロールを持参してください

バニラJSでは、ロケールの切り替えは明示的です。

ts
非同期 関数 setLocale(locale) {
  エンジン.setLocale(locale);
  await render();
}

それは、コアパッケージがルーティングやReactの状態を所有しているふりをするよりも、より適切です。

コアパッケージに留まるべき時

最大のコントロールを望むなら、ここに留まってください。

ReactまたはNextパッケージに移動したいときは:

  • JSX 翻訳プリミティブ
  • 組み込みロケールフック
  • アダプタ管理のルーティングとメタデータ