# Vue: InitializeGTSPAOptions
URL: https://generaltranslation.com/ja/docs/vue/reference/types/initialize-gt-spa-options.mdx
Docs index: https://generaltranslation.com/llms.txt
Description: プリロードされたモジュールレベルでの翻訳に使用するブラウザ専用シングルトンを設定します。InitializeGTSPAOptions の API リファレンス。

このオブジェクトを [`initializeGTSPA()`](/docs/vue/reference/functions/initialize-gt-spa) に渡します。`gt.config.json` から直接読み取れるサポート対象ロケールのリストを追加して、[`CreateGTOptions`](/docs/vue/reference/types/create-gt-options) を拡張します。`customMapping` は継承されます。

## 概要 [#overview]

```ts
type InitializeGTSPAOptions = CreateGTOptions & {
  locales?: readonly string[];
};
```

| オプション                                   | 説明                                                    | 型                                                                     | 任意 | デフォルト                       |
| --------------------------------------- | ----------------------------------------------------- | --------------------------------------------------------------------- | -- | --------------------------- |
| [`defaultLocale`](#defaultlocale)       | ソースロケールおよび代替ロケール。                                     | `string`                                                              | はい | `en`                        |
| [`loadTranslations`](#loadtranslations) | 非同期のターゲットカタログローダー。                                    | [`LoadTranslations`](/docs/vue/reference/types/load-translations)     | はい | 空のカタログ                      |
| [`locale`](#locale)                     | 明示的に指定する初期ロケール。                                       | `string`                                                              | はい | Cookie、次に `defaultLocale`   |
| [`localeCookieName`](#localecookiename) | ロケールの選択を保持するために使用するCookie。                            | `string`                                                              | はい | `generaltranslation.locale` |
| [`customMapping`](#custommapping)       | ロケールのマッチングとフォーマッタのロケール解決に使用する `code` 値をマッピングするオブジェクト。 | [`CustomMapping`](/docs/platform/core/reference/types/custom-mapping) | はい | なし                          |
| [`locales`](#locales)                   | このSPAでサポートされるターゲットロケール。                               | `readonly string[]`                                                   | はい | 制限なし                        |

## 共通オプション [#shared-options]

### `defaultLocale`

**型** `string` · **任意** · **デフォルト** `en`

ソースロケールおよび代替ロケール。サポートされるロケールのセットに自動的に含まれ、ローダー を呼び出す代わりにソースコンテンツを使用します。

### `loadTranslations`

**型** [`LoadTranslations`](/docs/vue/reference/types/load-translations) · **任意** · **デフォルト** 空のカタログ

完全なターゲットカタログを読み込みます。SPA の初期化では、完了前にアクティブなロケールのカタログが読み込まれるのを待機します。失敗した場合は診断情報が記録され、初期化が失敗しますが、後続の初期化呼び出しで再試行できます。

### `locale`

**型** `string` · **任意** · **既定値** ブラウザのcookie、次に`defaultLocale`

初期ロケールを明示的に指定します。cookieより優先され、`locales`に照らして解決され、永続化されます。以降、ドキュメントが再読み込みされるまで、現在のページではその解決済みロケールが固定されます。

### `localeCookieName`

**型** `string` · **任意** · **デフォルト** `generaltranslation.locale`

ブートストラップ時に読み取られ、SPA のロケール再読み込み前に書き込まれる、パス全体で有効なセッション Cookie の名前を指定します。

## SPA オプション [#spa-options]

### `customMapping`

**型** `Record<string, string | Partial<LocaleProperties>>` · **任意** · **デフォルト** なし

General Translation の設定でロケールのエイリアスを宣言します。SPA は、サポート対象ロケールの照合と、リッチコンテンツおよびフォーマッタコンポーネントで使用するフォーマッタロケールのために、オブジェクトのマッピング内の有効な `code` を使用します。オブジェクトのマッピング内にある文字列値やその他のプロパティは、`gt-vue` では読み取られません。

ローダーのパスには、設定済みの `defaultLocale` または一致した `locales` エントリの表記が引き続き渡されます。

### `locales`

**型** `readonly string[]` · **任意** · **デフォルト** 制限なし

アプリケーションで宣言するターゲットロケール。イニシャライザは `[defaultLocale, ...locales]` の重複を除去し、リクエストを大文字・小文字を区別せずに、正規ロケールの解決を通じて照合します。設定済みのロケールに一致しない場合は、`defaultLocale` にフォールバックします。

このオプションを省略した場合、デフォルト以外のロケールコードは拒否されません。`defaultLocale` と大文字・小文字の違いのみの表記やそのエイリアスも、設定されたデフォルトの表記に解決されます。

## シングルトンの動作 [#singleton]

ページ全体で使用される Runtime は、最初の初期化試行で指定された options によってのみ作成されます。同時に行われた call は、その試行を共有します。初期化に成功すると、以降の call は既存の plugin を返し、新しい option 値は適用されません。

最初の試行が reject された場合、実行中の singleton エントリはクリアされ、以降の call で新しい options を指定して再試行できます。

## 例 [#example]

```ts title="src/index.ts"
import { initializeGTSPA } from 'gt-vue';
import type { InitializeGTSPAOptions } from 'gt-vue';
import gtConfig from '../gt.config.json';
import loadTranslations from './loadTranslations';

const options: InitializeGTSPAOptions = {
  defaultLocale: gtConfig.defaultLocale,
  locales: gtConfig.locales,
  customMapping: gtConfig.customMapping,
  loadTranslations,
};

async function bootstrap() {
  const gt = await initializeGTSPA(options);
  const { mount } = await import('./main');
  mount(gt);
}

void bootstrap().catch((error: unknown) => {
  console.error(error);
});
```

この API はブラウザ専用です。サーバーサイドレンダリングでは、リクエストスコープの [`CreateGTOptions`](/docs/vue/reference/types/create-gt-options) と [`createGT()`](/docs/vue/reference/functions/create-gt) を使用してください。

## Sitemap

See the full [sitemap](https://generaltranslation.com/sitemap.md) for all pages.
