バニラJSリファレンス
create18waysEngine(options)
@18ways/core/engine からインポートします。
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 | 文字列 | この呼び出しのために基本ロケールを上書きします。 |
コンテキスト | 文字列 | オブジェクト | この呼び出しのコンテキストをオーバーライドします。 |
vars | Record<string, unknown> | waysParserのための変数入力です。 |
Utility exports
コアパッケージは、次のような低レベルのヘルパーもエクスポートします:
fetchAcceptedLocalesfetchConfig- ロケールユーティリティ
必要なときにそれらを使用してください。ただし、エンジンはデフォルトの出発点であるべきです。