vue-i18n / general / createI18n
関数: createI18n()
呼び出しシグネチャ
ts
function createI18n<Options, Messages, DateTimeFormats, NumberFormats, OptionLocale>(options): I18n<Messages, DateTimeFormats, NumberFormats, OptionLocale>;タイプパラメータ
| タイプパラメータ | デフォルト型 |
|---|---|
Options extends I18nOptions<{ datetime: IntlDateTimeFormat; message: DefaultLocaleMessageSchema; number: IntlNumberFormat; }, string, ComposerOptions<{ datetime: IntlDateTimeFormat; message: DefaultLocaleMessageSchema; number: IntlNumberFormat; }, string, string, string, string, LocaleMessage<VueMessageType>, IntlDateTimeFormat, IntlNumberFormat, LocaleMessages<LocaleMessage<VueMessageType>, string, VueMessageType>, IntlDateTimeFormats<IntlDateTimeFormat, string>, IntlNumberFormats<IntlNumberFormat, string>>> | I18nOptions<{ datetime: IntlDateTimeFormat; message: DefaultLocaleMessageSchema; number: IntlNumberFormat; }, string, ComposerOptions<{ datetime: IntlDateTimeFormat; message: DefaultLocaleMessageSchema; number: IntlNumberFormat; }, string, string, string, string, LocaleMessage<VueMessageType>, IntlDateTimeFormat, IntlNumberFormat, LocaleMessages<LocaleMessage<VueMessageType>, string, VueMessageType>, IntlDateTimeFormats<IntlDateTimeFormat, string>, IntlNumberFormats<IntlNumberFormat, string>>> |
Messages extends Record<string, unknown> | Options["messages"] extends Record<string, unknown> ? any[any] : object |
DateTimeFormats extends Record<string, unknown> | Options["datetimeFormats"] extends Record<string, unknown> ? any[any] : object |
NumberFormats extends Record<string, unknown> | Options["numberFormats"] extends Record<string, unknown> ? any[any] : object |
OptionLocale | Options["locale"] extends string ? any[any] : string |
パラメータ
| パラメータ | タイプ |
|---|---|
options | Options |
戻り値
I18n<Messages, DateTimeFormats, NumberFormats, OptionLocale>
呼び出しシグネチャ
ts
function createI18n<Schema, Locales, Options, Messages, DateTimeFormats, NumberFormats, OptionLocale>(options): I18n<Messages, DateTimeFormats, NumberFormats, OptionLocale>;Vue I18n ファクトリー
タイプパラメータ
| タイプパラメータ | デフォルト型 | 説明 |
|---|---|---|
Schema extends object | LocaleMessage<VueMessageType> | i18nリソース(メッセージ、datetimeFormats、numberFormats)スキーマ、デフォルトLocaleMessage |
Locales extends string | object | "en-US" | i18nリソーススキーマのロケール、デフォルト en-US |
Options extends I18nOptions<SchemaParams<Schema, VueMessageType>, LocaleParams<Locales>, ComposerOptions<SchemaParams<Schema, VueMessageType>, LocaleParams<Locales>, LocaleParams<Locales> extends object ? M : LocaleParams<Locales> extends string ? string & LocaleParams<Locales> : string, LocaleParams<Locales> extends object ? D : LocaleParams<Locales> extends string ? string & LocaleParams<Locales> : string, LocaleParams<Locales> extends object ? N : LocaleParams<Locales> extends string ? string & LocaleParams<Locales> : string, SchemaParams<Schema, VueMessageType> extends object ? M : LocaleMessage<VueMessageType>, SchemaParams<Schema, VueMessageType> extends object ? D : IntlDateTimeFormat, SchemaParams<Schema, VueMessageType> extends object ? N : IntlNumberFormat, LocaleMessages<SchemaParams<Schema, VueMessageType> extends object ? M : LocaleMessage<VueMessageType>, LocaleParams<Locales> extends object ? M : LocaleParams<Locales> extends string ? string & LocaleParams<Locales> : string, VueMessageType>, IntlDateTimeFormats<SchemaParams<Schema, VueMessageType> extends object ? D : IntlDateTimeFormat, LocaleParams<Locales> extends object ? D : LocaleParams<Locales> extends string ? string & LocaleParams<Locales> : string>, IntlNumberFormats<SchemaParams<Schema, VueMessageType> extends object ? N : IntlNumberFormat, LocaleParams<Locales> extends object ? N : LocaleParams<Locales> extends string ? string & LocaleParams<Locales> : string>>> | I18nOptions<SchemaParams<Schema, VueMessageType>, LocaleParams<Locales>, ComposerOptions<SchemaParams<Schema, VueMessageType>, LocaleParams<Locales>, LocaleParams<Locales> extends object ? M : LocaleParams<Locales> extends string ? string & LocaleParams<Locales> : string, LocaleParams<Locales> extends object ? D : LocaleParams<Locales> extends string ? string & LocaleParams<Locales> : string, LocaleParams<Locales> extends object ? N : LocaleParams<Locales> extends string ? string & LocaleParams<Locales> : string, SchemaParams<Schema, VueMessageType> extends object ? M : LocaleMessage<VueMessageType>, SchemaParams<Schema, VueMessageType> extends object ? D : IntlDateTimeFormat, SchemaParams<Schema, VueMessageType> extends object ? N : IntlNumberFormat, LocaleMessages<SchemaParams<Schema, VueMessageType> extends object ? M : LocaleMessage<VueMessageType>, LocaleParams<Locales> extends object ? M : LocaleParams<Locales> extends string ? string & LocaleParams<Locales> : string, VueMessageType>, IntlDateTimeFormats<SchemaParams<Schema, VueMessageType> extends object ? D : IntlDateTimeFormat, LocaleParams<Locales> extends object ? D : LocaleParams<Locales> extends string ? string & LocaleParams<Locales> : string>, IntlNumberFormats<SchemaParams<Schema, VueMessageType> extends object ? N : IntlNumberFormat, LocaleParams<Locales> extends object ? N : LocaleParams<Locales> extends string ? string & LocaleParams<Locales> : string>>> | - |
Messages extends Record<string, unknown> | NonNullable<Options["messages"]> extends Record<string, unknown> ? NonNullable<NonNullable<Options["messages"]>> : object | - |
DateTimeFormats extends Record<string, unknown> | NonNullable<Options["datetimeFormats"]> extends Record<string, unknown> ? NonNullable<NonNullable<Options["datetimeFormats"]>> : object | - |
NumberFormats extends Record<string, unknown> | NonNullable<Options["numberFormats"]> extends Record<string, unknown> ? NonNullable<NonNullable<Options["numberFormats"]>> : object | - |
OptionLocale | Options["locale"] extends string ? any[any] : string | - |
パラメータ
| パラメータ | タイプ | 説明 |
|---|---|---|
options | Options | オプション、I18nOptionsを参照 |
戻り値
I18n<Messages, DateTimeFormats, NumberFormats, OptionLocale>
I18n インスタンス
以下の項目を参照:
例
js
import { createApp } from 'vue'
import { createI18n, useI18n } from 'vue-i18n'
// I18nオプションで呼び出す
const i18n = createI18n({
locale: 'ja',
messages: {
en: { ... },
ja: { ... }
}
})
const App = {
setup() {
// ...
const { t } = useI18n({ ... })
return { ... , t }
}
}
const app = createApp(App)
// インストール!
app.use(i18n)
app.mount('#app')