バニラJSリファレンス

create18waysEngine(options)

@18ways/core/engine からインポートします。

ts
import { create18waysEngine } from '@18ways/core/engine';

一般的なオプション:

オプションタイプノート
apiKey文字列必須です。
baseLocale文字列ソースロケール。
ロケール文字列現在のターゲットロケール。
コンテキスト文字列 | オブジェクトデフォルトのコンテキストキー。
initialTranslations翻訳オプションのスタートキャッシュ。
apiUrl文字列オプションのAPIベースのオーバーライド。
フェッチャーfetchの型カスタムフェッチ実装。
cacheTtlSeconds番号リクエストキャッシュのTTL。
origin文字列オリジンはサーバー側のリクエストに転送されました。

エンジンメソッド

t(text, options?)

文字列を翻訳し、解決された値を返します。

setLocale(locale)

ターゲットロケールを変更します。

getLocale()

現在のターゲットロケールを読み取ります。

getStore()

基盤となる翻訳ストアにアクセスします。

TranslationStore

engine.getStore() は、より低レベルのランタイム状態マシンを公開します。ストアは、ロケール状態、 設定、読み込み済みの翻訳、記憶された原文、そしてブロッキングな読み込み状態を保持します。

よく使われる方法:

方法ノート
state を取得()現在選択されているロケール、確定済みロケール、設定、キャッシュされた翻訳を読み取ります。
hydrate(input)翻訳と設定をストアに統合します。SSR やカスタムのブートストラップに便利です。
デハイドレート()ストアをスナップショットして、マージしやすいハイドレーション用ペイロードにする。
loadConfig()受け入れ可能なロケールとフォールバック設定を一度取得し、その結果をキャッシュします。
ロケール(locale)を設定するストア内でロケールの切り替えを開始します。
getTranslationSync(input)準備済みの値、またはフォールバック値付きの保留中の読み取りを返す同期読み取り。
getTranslation(input)最終的な翻訳文字列に解決される非同期翻訳読み取り。
isLoading(input?)グローバルまたは1つのコンテキストについて、ブロッキング中の翻訳作業がまだ保留中である場合に true を返します。
待機中入力?)ブロッキングしている翻訳作業が収束すると解決されます。読み込みはバックグラウンドで続行されるまま、期限後の待機を止めるには timeoutMs を渡してください。
getIdleState(input?)レンダラーが使用する、ストア所有のタイムアウト待機状態を返します: {timedOut, promise}
マウント(entry) / アンマウント(entry)マウントを認識するガベージコレクションを有効にする統合向けの、オプションのマウント追跡。

@18ways/core を直接使っている場合は、通常 engine.t(...) レベルにとどまります。独自のレンダリングランタイムやハイドレーション層を構築しているときは、store を使ってください。

t() オプション

オプションタイプノート
ロケール文字列この呼び出しのターゲットロケールをオーバーライドします。
baseLocale文字列この呼び出しのために基本ロケールを上書きします。
コンテキスト文字列 | オブジェクトこの呼び出しのコンテキストをオーバーライドします。
varsRecord<string, unknown>waysParserのための変数入力です。

Utility exports

コアパッケージは、次のような低レベルのヘルパーもエクスポートします:

  • fetchAcceptedLocales
  • fetchConfig
  • ロケールユーティリティ

必要なときにそれらを使用してください。ただし、エンジンはデフォルトの出発点であるべきです。

言語を変更中
バニラJSリファレンス