Général
createI18n
Usine Vue I18n
Signature:
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ètre | Description |
|---|---|
| Schema | Le schéma des ressources i18n (messages, datetimeFormats, numberFormats), par défaut |
| Locales | Les paramètres régionaux du schéma de ressource i18n, par défaut en-US |
Paramètres
| Paramètre | Type | Description |
|---|---|---|
| options | Options | Une option, voir I18nOptions |
Retours
Instance I18n
Voir :
Exemples
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:
export interface DefineDateTimeFormat extends DateTimeFormatDé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
// 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:
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
// 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:
export interface DefineNumberFormat extends NumberFormatDé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
// 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:
export interface ExportedGlobalComposerDé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:
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:
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:
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:
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:
readonly global: Composer<Messages, DateTimeFormats, NumberFormats, OptionLocale>;dispose()
Libérer les ressources d'étendue globale
Signature:
dispose(): void;Paramètres
| Paramètre | Type | Description |
|---|
install(app, options)
Point d'entrée de l'installation
Signature:
install(app: App, ...options: unknown[]): void;Paramètres
| Paramètre | Type | Description |
|---|---|---|
| app | App | Une instance d'application Vue cible |
| options | unknown[] | Une option d'installation |
I18nAdditionalOptions
Options supplémentaires I18n
Signature:
export interface I18nAdditionalOptionsDé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:
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 :
- Implicite avec les propriétés et fonctions injectées
- link ComponentCustomProperties
true
I18nOptions
Options I18n pour createI18n
Signature:
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:
export interface I18nPluginOptionsDé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:
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:
export type I18nScope = 'local' | 'parent' | 'global';VERSION
Version Vue I18n
Signature:
VERSION: stringDétails
Format Semver. Même format que le champ version du fichier package.json.
DateTimeOptions
Options de date et heure
Signature:
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:
fallbackWarn?: boolean;Détails
Si résoudre sur les clés de format lorsque votre langue manque un format pour une clé
key
Signature:
key?: Key;Détails
La clé de format cible
missingWarn
Signature:
missingWarn?: boolean;Détails
Si supprimer les avertissements affichés en cas d'échec de localisation
part
Signature:
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:
export interface DefineCoreLocaleMessage extends LocaleMessage<string>Détails
Le type alias est utilisé pour définir strictement le type du message local.
Exemples
// 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:
export type FallbackLocale = Locale | Locale[] | {
[locale in string]: Locale[];
} | false;fallbackWithLocaleChain
Secours avec chaîne locale
Signature:
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ètre | Type | Description |
|---|---|---|
| ctx | CoreContext<Message> | Un contexte |
| fallback | FallbackLocale | Un locale de secours |
| start | Locale | Un locale de départ |
Retours
Locales de secours
fallbackWithSimple
Secours avec implémentation simple
Signature:
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ètre | Type | Description |
|---|---|---|
| _ctx | CoreContext<Message> | |
| fallback | FallbackLocale | Un locale de secours |
| start | Locale | Un locale de départ |
Retours
Locales de secours
LinkedModifiers
Signature:
export type LinkedModifiers<T = string> = {
[key: string]: LinkedModify<T>;
};Locale
Signature:
export type Locale = IsNever<GeneratedLocale> extends true ? string : GeneratedLocale;LocaleDetector
Signature:
export interface LocaleDetector<Args extends any[] = any[]>resolvedOnce
(...args: Args): Locale | Promise<Locale>;
LocaleFallbacker
Le générateur de locale de secours
Signature:
export type LocaleFallbacker = <Message = string>(ctx: CoreContext<Message>, fallback: FallbackLocale, start: Locale) => Locale[];LocaleMessage
Signature:
export type LocaleMessage<Message = string> = Record<string, LocaleMessageValue<Message>>;LocaleMessageDictionary
Signature:
export type LocaleMessageDictionary<T, Message = string> = {
[K in keyof T]: LocaleMessageType<T[K], Message>;
};LocaleMessages
Signature:
export type LocaleMessages<Schema, Locales = Locale, _Message = string> = LocaleRecord<UnionToTuple<Locales>, Schema>;LocaleMessageType
Signature:
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:
export type LocaleMessageValue<Message = string> = LocaleMessageDictionary<any, Message> | string;LocaleOptions
Signature:
export interface LocaleOptions<Locales = Locale>locale
Signature:
locale?: Locales | LocaleDetector;Détails
Le paramètre régional de localisation
MessageCompiler
Le compilateur de message
Signature:
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:
export type MessageCompilerContext = Pick<CompileOptions, 'onError' | 'onCacheKey'> & {
warnHtmlMessage?: boolean;
key: string;
locale: Locale;
};MessageContext
Le contexte du message.
Signature:
export interface MessageContext<T = string>type
Le type de message à gérer par la fonction de message.
Signature:
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:
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) :
<p>{{ $t('greeting', { name: 'DIO' }) }}</p> <!-- `{ name: 'DIO' }` sont les valeurs du message -->cas de @intlify/core (@intlify/core-base) translate :
translate(context, 'foo.bar', ['dio']) // `['dio']` sont les valeurs du messagelinked(key, modifier)
Résoudre le message lié.
Signature:
linked(key: Path, modifier?: string): MessageType<T>;Paramètres
| Paramètre | Type | Description |
|---|---|---|
| key | Path | Une clé de message |
| modifier | string | Un modificateur |
Retours
Un message résolu.
linked(key, modifier, type)
Surcharge de linked
Signature:
linked(key: Path, modifier?: string, type?: string): MessageType<T>;Paramètres
| Paramètre | Type | Description |
|---|---|---|
| key | Path | Une clé de message |
| modifier | string | Un modificateur |
| type | string | Un type de message |
Retours
Un message résolu.
linked(key, options)
Surcharge de linked
Signature:
linked(key: Path, options?: LinkedOptions): MessageType<T>;Paramètres
| Paramètre | Type | Description |
|---|---|---|
| key | Path | Une clé de message |
| options | LinkedOptions | Un lien d'options |
Retours
Un message résolu.
list(index)
Résoudre une valeur de message à partir d'une liste.
Signature:
list(index: number): unknown;Paramètres
| Paramètre | Type | Description |
|---|---|---|
| index | number | Un index des valeurs de message. |
Retours
Une valeur de message résolue.
Exemples
const messages = {
en: {
greeting: ({ list }) => `hello, ${list(0)}!`
}
}named(key)
Résoudre une valeur de message à partir d'un nom.
Signature:
named(key: string): unknown;Paramètres
| Paramètre | Type | Description |
|---|---|---|
| key | string | Une clé de valeur de message. |
Retours
Une valeur de message résolue.
Exemples
const messages = {
en: {
greeting: ({ named }) => `hello, ${named('name')}!`
}
}plural(messages)
Résoudre un message avec un index pluriel.
Signature:
plural(messages: T[]): T;Détails
Cela est résolu avec un index pluriel avec une fonction de traduction.
Paramètres
| Paramètre | Type | Description |
|---|---|---|
| messages | T[] | les messages, résolus avec un index pluriel avec une fonction de traduction. |
Retours
Un message résolu.
Exemples
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:
export type MessageFunction<T = string> = MessageFunctionCallable | MessageFunctionInternal<T>;MessageFunctionReturn
Signature:
export type MessageFunctionReturn<T = string> = T extends string ? MessageType<T> : MessageType<T>[];MessageResolver
Signature:
export type MessageResolver = (obj: unknown, path: Path) => PathValue;NamedValue
Signature:
export type NamedValue<T = {}> = T & Record<string, unknown>;NumberOptions
Options numériques
Signature:
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:
fallbackWarn?: boolean;Détails
Si résoudre sur les clés de format lorsque votre langue manque un format pour une clé
key
Signature:
key?: Key;Détails
La clé de format cible
missingWarn
Signature:
missingWarn?: boolean;Détails
Si supprimer les avertissements affichés en cas d'échec de localisation
part
Signature:
part?: boolean;Détails
Si utiliser Intel.NumberFormat#formatToParts
Path
Signature:
export type Path = string;PathValue
Signature:
export type PathValue = string | number | boolean | Function | null | {
[key: string]: PathValue;
} | PathValue[];PluralizationRules
Signature:
export type PluralizationRules = {
[locale: string]: PluralizationRule;
};PostTranslationHandler
Signature:
export type PostTranslationHandler<Message = string> = (translated: MessageFunctionReturn<Message>, key: string) => MessageFunctionReturn<Message>;registerLocaleFallbacker
Enregistrer le générateur de locale de secours
Signature:
export declare function registerLocaleFallbacker(fallbacker: LocaleFallbacker): void;Paramètres
| Paramètre | Type | Description |
|---|---|---|
| fallbacker | LocaleFallbacker | Une fonction LocaleFallbacker |
registerMessageResolver
Enregistrer le résolveur de message
Signature:
export declare function registerMessageResolver(resolver: MessageResolver): void;Paramètres
| Paramètre | Type | Description |
|---|---|---|
| resolver | MessageResolver | Une fonction MessageResolver |
resolveValue
résolveur de message
Signature:
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ètre | Type | Description |
|---|---|---|
| obj | unknown | Un objet cible à résoudre avec le chemin |
| path | Path | Un chemin pour résoudre la valeur du message |
Retours
Une valeur de chemin résolue
resolveWithKeyValue
résolveur de message clé-valeur
Signature:
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ètre | Type | Description |
|---|---|---|
| obj | unknown | Un objet cible à résoudre avec le chemin |
| path | Path | Un chemin pour résoudre la valeur du message |
Retours
Une valeur de chemin résolue
TranslateOptions
Options de traduction
Signature:
export interface TranslateOptions<Locales = Locale> extends LocaleOptions<Locales>Détails
Options pour l'API de traduction
default
Signature:
default?: string | boolean;Détails
Message par défaut en cas d'absence de traduction
escapeParameter
Signature:
escapeParameter?: boolean;Détails
Si échapper les paramètres pour les valeurs d'interpolation de liste ou de nom
fallbackWarn
Signature:
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:
list?: unknown[];Détails
Interpolation de liste
missingWarn
Signature:
missingWarn?: boolean;Détails
Si supprimer les avertissements affichés en cas d'échec de localisation
named
Signature:
named?: NamedValue;Détails
Interpolation nommée
plural
Signature:
plural?: number;Détails
Nombre de choix pour le pluriel
resolvedMessage
Signature:
resolvedMessage?: boolean;Détails
Si le message a été résolu