Skip to content

Général

createI18n

Usine Vue I18n

Signature:

typescript
export declare function createI18n<Schema extends object = DefaultLocaleMessageSchema, Locales extends string | object = 'en-US', Options extends I18nOptions<SchemaParams<Schema, VueMessageType>, LocaleParams<Locales>> = I18nOptions<SchemaParams<Schema, VueMessageType>, LocaleParams<Locales>>, Messages extends Record<string, unknown> = NonNullable<Options['messages']> extends Record<string, unknown> ? NonNullable<Options['messages']> : {}, DateTimeFormats extends Record<string, unknown> = NonNullable<Options['datetimeFormats']> extends Record<string, unknown> ? NonNullable<Options['datetimeFormats']> : {}, NumberFormats extends Record<string, unknown> = NonNullable<Options['numberFormats']> extends Record<string, unknown> ? NonNullable<Options['numberFormats']> : {}, OptionLocale = Options['locale'] extends string ? Options['locale'] : Locale>(options: Options): I18n<Messages, DateTimeFormats, NumberFormats, OptionLocale>;

Paramètres de type

ParamètreDescription
SchemaLe schéma des ressources i18n (messages, datetimeFormats, numberFormats), par défaut
LocalesLes paramètres régionaux du schéma de ressource i18n, par défaut en-US

Paramètres

ParamètreTypeDescription
optionsOptionsUne option, voir I18nOptions

Retours

Instance I18n

Voir :

Exemples

js
import { createApp } from 'vue'
import { createI18n, useI18n } from 'vue-i18n'

// appel avec l'option I18n
const i18n = createI18n({
  locale: 'ja',
  messages: {
    en: { ... },
    ja: { ... }
  }
})

const App = {
  setup() {
    // ...
    const { t } = useI18n({ ... })
    return { ... , t }
  }
}

const app = createApp(App)

// installation !
app.use(i18n)
app.mount('#app')

DefineDateTimeFormat

La définition de type du format de date et heure

Signature:

typescript
export interface DefineDateTimeFormat extends DateTimeFormat

Détails

Le type alias est utilisé pour définir strictement le type du format de date et heure.

Le type défini par celui-ci peut être utilisé dans le scope global.

Exemples

ts
// type.d.ts (fichier .d.ts dans votre application)
import { DefineDateTimeFormat } from 'vue-i18n'

declare module 'vue-i18n' {
  export interface DefineDateTimeFormat {
    short: {
      hour: 'numeric'
      timezone: string
    }
  }
}

DefineLocaleMessage

La définition de type du message local

Signature:

typescript
export interface DefineLocaleMessage extends LocaleMessage<VueMessageType>

Détails

Le type alias est utilisé pour définir strictement le type du message local.

Le type défini par celui-ci peut être utilisé dans le scope global.

Exemples

ts
// type.d.ts (fichier .d.ts dans votre application)
import { DefineLocaleMessage } from 'vue-i18n'

declare module 'vue-i18n' {
  export interface DefineLocaleMessage {
    title: string
    menu: {
      login: string
    }
  }
}

DefineNumberFormat

La définition de type du format numérique

Signature:

typescript
export interface DefineNumberFormat extends NumberFormat

Détails

Le type alias est utilisé pour définir strictement le type du format numérique.

Le type défini par celui-ci peut être utilisé dans le scope global.

Exemples

ts
// type.d.ts (fichier .d.ts dans votre application)
import { DefineNumberFormat } from 'vue-i18n'

declare module 'vue-i18n' {
  export interface DefineNumberFormat {
    currency: {
      style: 'currency'
      currencyDisplay: 'symbol'
      currency: string
    }
  }
}

ExportedGlobalComposer

Instance de compositeur globale exportée

Signature:

typescript
export interface ExportedGlobalComposer

Détails

Cette interface est le compositeur global qui fournit l'interface injectée dans chaque composant avec app.config.globalProperties.

availableLocales

Paramètres régionaux disponibles

Signature:

typescript
readonly availableLocales: Locale[];

Détails

Cette propriété est une propriété de proxy semblable à Composer#availableLocales. Pour plus de détails, voir

fallbackLocale

Paramètre régional de secours

Signature:

typescript
fallbackLocale: FallbackLocale;

Détails

Cette propriété est une propriété de proxy semblable à Composer#fallbackLocale. Pour plus de détails, voir

locale

Paramètre régional

Signature:

typescript
locale: Locale;

Détails

Cette propriété est une propriété de proxy semblable à Composer#locale. Pour plus de détails, voir

I18n

Instance I18n

Signature:

typescript
export interface I18n<Messages extends Record<string, unknown> = {}, DateTimeFormats extends Record<string, unknown> = {}, NumberFormats extends Record<string, unknown> = {}, OptionLocale = Locale>

Détails

L'instance requise pour l'installation comme plugin Vue

global

La propriété accessible à l'instance de Compositeur global

Une instance de cette propriété est dans scope global*.

Signature:

typescript
readonly global: Composer<Messages, DateTimeFormats, NumberFormats, OptionLocale>;

dispose()

Libérer les ressources d'étendue globale

Signature:

typescript
dispose(): void;

Paramètres

ParamètreTypeDescription

install(app, options)

Point d'entrée de l'installation

Signature:

typescript
install(app: App, ...options: unknown[]): void;

Paramètres

ParamètreTypeDescription
appAppUne instance d'application Vue cible
optionsunknown[]Une option d'installation

I18nAdditionalOptions

Options supplémentaires I18n

Signature:

typescript
export interface I18nAdditionalOptions

Détails

I18nAdditionalOptions sont des options de configuration spécifiques à Vue I18n pour l'installation du plugin et le contrôle du comportement.

globalInjection

Si les propriétés et fonctions globales doivent être injectées dans chaque composant.

Signature:

typescript
globalInjection?: boolean;

Détails

Si défini à true, alors les propriétés et méthodes préfixées avec $ sont injectées dans le composant Vue.

Voir :

true

I18nOptions

Options I18n pour createI18n

Signature:

typescript
export type I18nOptions<Schema extends {
    message?: unknown;
    datetime?: unknown;
    number?: unknown;
} = {
    message: DefaultLocaleMessageSchema;
    datetime: DefaultDateTimeFormatSchema;
    number: DefaultNumberFormatSchema;
}, Locales extends {
    messages: unknown;
    datetimeFormats: unknown;
    numberFormats: unknown;
} | string = Locale, Options = ComposerOptions<Schema, Locales>> = I18nAdditionalOptions & Options;

I18nPluginOptions

Options du plugin Vue I18n

Signature:

typescript
export interface I18nPluginOptions

Détails

Une option spécifiée lors de l'installation de Vue I18n comme plugin Vue avec app.use.

globalInstall

Si installer globalement les composants offerts par Vue I18n

Signature:

typescript
globalInstall?: boolean;

Détails

Si cette option est activée, les composants seront installés globalement au moment de app.use.

Si vous voulez installer manuellement avec la syntaxe import, vous pouvez définir cette valeur à false pour installer uniquement si nécessaire.

true

I18nScope

Portée I18n

Signature:

typescript
export type I18nScope = 'local' | 'parent' | 'global';

VERSION

Version Vue I18n

Signature:

typescript
VERSION: string

Détails

Format Semver. Même format que le champ version du fichier package.json.

DateTimeOptions

Options de date et heure

Signature:

typescript
export interface DateTimeOptions<Key = string, Locales = Locale> extends Intl.DateTimeFormatOptions, LocaleOptions<Locales>

Détails

Options pour l'API de mise en forme de date et heure

fallbackWarn

Signature:

typescript
fallbackWarn?: boolean;

Détails

Si résoudre sur les clés de format lorsque votre langue manque un format pour une clé

key

Signature:

typescript
key?: Key;

Détails

La clé de format cible

missingWarn

Signature:

typescript
missingWarn?: boolean;

Détails

Si supprimer les avertissements affichés en cas d'échec de localisation

part

Signature:

typescript
part?: boolean;

Détails

Si utiliser Intel.DateTimeFormat#formatToParts

DefineCoreLocaleMessage

La définition de type du message local pour le paquet @intlify/core-base

Signature:

typescript
export interface DefineCoreLocaleMessage extends LocaleMessage<string>

Détails

Le type alias est utilisé pour définir strictement le type du message local.

Exemples

ts
// type.d.ts (fichier .d.ts dans votre application)
import { DefineCoreLocaleMessage } from '@intlify/core-base'

declare module '@intlify/core-base' {
  export interface DefineCoreLocaleMessage {
    title: string
    menu: {
      login: string
    }
  }
}

FallbackLocale

Signature:

typescript
export type FallbackLocale = Locale | Locale[] | {
    [locale in string]: Locale[];
} | false;

fallbackWithLocaleChain

Secours avec chaîne locale

Signature:

typescript
export declare function fallbackWithLocaleChain<Message = string>(ctx: CoreContext<Message>, fallback: FallbackLocale, start: Locale): Locale[];

Détails

Une fonction de locale de secours implémentée avec un algorithme de chaîne de secours. Elle est utilisée dans VueI18n comme valeur par défaut.

Voir aussi

Paramètres

ParamètreTypeDescription
ctxCoreContext<Message>Un contexte
fallbackFallbackLocaleUn locale de secours
startLocaleUn locale de départ

Retours

Locales de secours

fallbackWithSimple

Secours avec implémentation simple

Signature:

typescript
export declare function fallbackWithSimple<Message = string>(_ctx: CoreContext<Message>, fallback: FallbackLocale, start: Locale): Locale[];

Détails

Une fonction de locale de secours implémentée avec un algorithme simple de secours.

Généralement, elle retourne la valeur spécifiée dans les props fallbackLocale, et est traitée avec le secours dans intlify.

Paramètres

ParamètreTypeDescription
_ctxCoreContext<Message>
fallbackFallbackLocaleUn locale de secours
startLocaleUn locale de départ

Retours

Locales de secours

LinkedModifiers

Signature:

typescript
export type LinkedModifiers<T = string> = {
    [key: string]: LinkedModify<T>;
};

Locale

Signature:

typescript
export type Locale = IsNever<GeneratedLocale> extends true ? string : GeneratedLocale;

LocaleDetector

Signature:

typescript
export interface LocaleDetector<Args extends any[] = any[]>

resolvedOnce

(...args: Args): Locale | Promise<Locale>;

LocaleFallbacker

Le générateur de locale de secours

Signature:

typescript
export type LocaleFallbacker = <Message = string>(ctx: CoreContext<Message>, fallback: FallbackLocale, start: Locale) => Locale[];

LocaleMessage

Signature:

typescript
export type LocaleMessage<Message = string> = Record<string, LocaleMessageValue<Message>>;

LocaleMessageDictionary

Signature:

typescript
export type LocaleMessageDictionary<T, Message = string> = {
    [K in keyof T]: LocaleMessageType<T[K], Message>;
};

LocaleMessages

Signature:

typescript
export type LocaleMessages<Schema, Locales = Locale, _Message = string> = LocaleRecord<UnionToTuple<Locales>, Schema>;

LocaleMessageType

Signature:

typescript
export type LocaleMessageType<T, Message = string> = T extends string ? string : T extends () => Promise<infer P> ? LocaleMessageDictionary<P, Message> : T extends (...args: infer Arguments) => any ? (...args: Arguments) => ReturnType<T> : T extends Record<string, unknown> ? LocaleMessageDictionary<T, Message> : T extends Array<T> ? {
    [K in keyof T]: T[K];
} : T;

LocaleMessageValue

Signature:

typescript
export type LocaleMessageValue<Message = string> = LocaleMessageDictionary<any, Message> | string;

LocaleOptions

Signature:

typescript
export interface LocaleOptions<Locales = Locale>

locale

Signature:

typescript
locale?: Locales | LocaleDetector;

Détails

Le paramètre régional de localisation

MessageCompiler

Le compilateur de message

Signature:

typescript
export type MessageCompiler<Message = string, MessageSource = string | ResourceNode> = (message: MessageSource, context: MessageCompilerContext) => MessageFunction<Message>;

MessageCompilerContext

Le contexte qui sera passé au compilateur de message.

Signature:

typescript
export type MessageCompilerContext = Pick<CompileOptions, 'onError' | 'onCacheKey'> & {
    warnHtmlMessage?: boolean;
    key: string;
    locale: Locale;
};

MessageContext

Le contexte du message.

Signature:

typescript
export interface MessageContext<T = string>

type

Le type de message à gérer par la fonction de message.

Signature:

typescript
type: string;

Détails

Généralement text, vous devez retourner une chaîne dans la fonction de message.

values

Les valeurs du message.

Signature:

typescript
values: Record<string, unknown>;

Détails

Les valeurs du message sont les arguments passés depuis la fonction de traduction, telles que $t, t, ou translate.

Exemples

cas de vue-i18n $t (ou t) :

html
<p>{{ $t('greeting', { name: 'DIO' }) }}</p> <!-- `{ name: 'DIO' }` sont les valeurs du message -->

cas de @intlify/core (@intlify/core-base) translate :

js
translate(context, 'foo.bar', ['dio']) // `['dio']` sont les valeurs du message

linked(key, modifier)

Résoudre le message lié.

Signature:

typescript
linked(key: Path, modifier?: string): MessageType<T>;

Paramètres

ParamètreTypeDescription
keyPathUne clé de message
modifierstringUn modificateur

Retours

Un message résolu.

linked(key, modifier, type)

Surcharge de linked

Signature:

typescript
linked(key: Path, modifier?: string, type?: string): MessageType<T>;

Paramètres

ParamètreTypeDescription
keyPathUne clé de message
modifierstringUn modificateur
typestringUn type de message

Retours

Un message résolu.

linked(key, options)

Surcharge de linked

Signature:

typescript
linked(key: Path, options?: LinkedOptions): MessageType<T>;

Paramètres

ParamètreTypeDescription
keyPathUne clé de message
optionsLinkedOptionsUn lien d'options

Retours

Un message résolu.

list(index)

Résoudre une valeur de message à partir d'une liste.

Signature:

typescript
list(index: number): unknown;

Paramètres

ParamètreTypeDescription
indexnumberUn index des valeurs de message.

Retours

Une valeur de message résolue.

Exemples

js
const messages = {
  en: {
    greeting: ({ list }) => `hello, ${list(0)}!`
  }
}

named(key)

Résoudre une valeur de message à partir d'un nom.

Signature:

typescript
named(key: string): unknown;

Paramètres

ParamètreTypeDescription
keystringUne clé de valeur de message.

Retours

Une valeur de message résolue.

Exemples

js
const messages = {
  en: {
    greeting: ({ named }) => `hello, ${named('name')}!`
  }
}

plural(messages)

Résoudre un message avec un index pluriel.

Signature:

typescript
plural(messages: T[]): T;

Détails

Cela est résolu avec un index pluriel avec une fonction de traduction.

Paramètres

ParamètreTypeDescription
messagesT[]les messages, résolus avec un index pluriel avec une fonction de traduction.

Retours

Un message résolu.

Exemples

js
const messages = {
  en: {
    car: ({ plural }) => plural(['car', 'cars']),
    apple: ({ plural, named }) =>
      plural([
        'no apples',
        'one apple',
        `${named('count')} apples`
      ])
  }
}

MessageFunction

La fonction de message.

Signature:

typescript
export type MessageFunction<T = string> = MessageFunctionCallable | MessageFunctionInternal<T>;

MessageFunctionReturn

Signature:

typescript
export type MessageFunctionReturn<T = string> = T extends string ? MessageType<T> : MessageType<T>[];

MessageResolver

Signature:

typescript
export type MessageResolver = (obj: unknown, path: Path) => PathValue;

NamedValue

Signature:

typescript
export type NamedValue<T = {}> = T & Record<string, unknown>;

NumberOptions

Options numériques

Signature:

typescript
export interface NumberOptions<Key = string, Locales = Locale> extends Intl.NumberFormatOptions, LocaleOptions<Locales>

Détails

Options pour l'API de mise en forme numérique

fallbackWarn

Signature:

typescript
fallbackWarn?: boolean;

Détails

Si résoudre sur les clés de format lorsque votre langue manque un format pour une clé

key

Signature:

typescript
key?: Key;

Détails

La clé de format cible

missingWarn

Signature:

typescript
missingWarn?: boolean;

Détails

Si supprimer les avertissements affichés en cas d'échec de localisation

part

Signature:

typescript
part?: boolean;

Détails

Si utiliser Intel.NumberFormat#formatToParts

Path

Signature:

typescript
export type Path = string;

PathValue

Signature:

typescript
export type PathValue = string | number | boolean | Function | null | {
    [key: string]: PathValue;
} | PathValue[];

PluralizationRules

Signature:

typescript
export type PluralizationRules = {
    [locale: string]: PluralizationRule;
};

PostTranslationHandler

Signature:

typescript
export type PostTranslationHandler<Message = string> = (translated: MessageFunctionReturn<Message>, key: string) => MessageFunctionReturn<Message>;

registerLocaleFallbacker

Enregistrer le générateur de locale de secours

Signature:

typescript
export declare function registerLocaleFallbacker(fallbacker: LocaleFallbacker): void;

Paramètres

ParamètreTypeDescription
fallbackerLocaleFallbackerUne fonction LocaleFallbacker

registerMessageResolver

Enregistrer le résolveur de message

Signature:

typescript
export declare function registerMessageResolver(resolver: MessageResolver): void;

Paramètres

ParamètreTypeDescription
resolverMessageResolverUne fonction MessageResolver

resolveValue

résolveur de message

Signature:

typescript
export declare function resolveValue(obj: unknown, path: Path): PathValue;

Détails

Résout les messages. Les messages avec une structure hiérarchique tels que les objets peuvent être résolus. Ce résolveur est utilisé dans VueI18n par défaut.

Paramètres

ParamètreTypeDescription
objunknownUn objet cible à résoudre avec le chemin
pathPathUn chemin pour résoudre la valeur du message

Retours

Une valeur de chemin résolue

resolveWithKeyValue

résolveur de message clé-valeur

Signature:

typescript
export declare function resolveWithKeyValue(obj: unknown, path: Path): PathValue;

Détails

Résout les messages avec la structure clé-valeur. Notez que les messages avec une structure hiérarchique tels que les objets ne peuvent pas être résolus

Paramètres

ParamètreTypeDescription
objunknownUn objet cible à résoudre avec le chemin
pathPathUn chemin pour résoudre la valeur du message

Retours

Une valeur de chemin résolue

TranslateOptions

Options de traduction

Signature:

typescript
export interface TranslateOptions<Locales = Locale> extends LocaleOptions<Locales>

Détails

Options pour l'API de traduction

default

Signature:

typescript
default?: string | boolean;

Détails

Message par défaut en cas d'absence de traduction

escapeParameter

Signature:

typescript
escapeParameter?: boolean;

Détails

Si échapper les paramètres pour les valeurs d'interpolation de liste ou de nom

fallbackWarn

Signature:

typescript
fallbackWarn?: boolean;

Détails

Si effectuer l'interpolation de modèle sur les clés de traduction lorsque votre langue n'a pas de traduction pour une clé

list

Signature:

typescript
list?: unknown[];

Détails

Interpolation de liste

missingWarn

Signature:

typescript
missingWarn?: boolean;

Détails

Si supprimer les avertissements affichés en cas d'échec de localisation

named

Signature:

typescript
named?: NamedValue;

Détails

Interpolation nommée

plural

Signature:

typescript
plural?: number;

Détails

Nombre de choix pour le pluriel

resolvedMessage

Signature:

typescript
resolvedMessage?: boolean;

Détails

Si le message a été résolu