Lzh on GitHub

defineI18nLocale

defineI18nLocale() 可组合项用于定义一个函数,以动态加载用于懒加载翻译的语言环境消息。

defineI18nLocale() 可组合项用于定义一个函数,以动态加载用于懒加载翻译的语言环境消息。

加载器函数需要返回一个解析消息对象的 Promise

类型

declare function defineI18nLocale<Messages = LocaleMessages<DefineLocaleMessage>, Locales = Locale>(
  loader: (locale: Locales) => Messages | Promise<Messages>
): (locale: Locales) => Messages | Promise<Messages>

参数

loader

一个函数,用于动态加载语言环境消息,它具有以下参数:

  • locale
    类型Locale
    从 Nuxt i18n 模块传递的目标语言环境。在以下情况下切换语言环境时会传递该参数:
    • 使用 setLocale() 切换语言环境时。
    • 使用 <NuxtLink> 切换语言环境时。例如,由 useSwitchLocalePath()$switchLocalePath() 解析的路由路径。

用法

一个使用 fetch 请求加载语言环境消息的加载器函数示例:

export default defineI18nLocale(locale => {
  return $fetch(`https://your-company-product/api/${locale}`)
})