选项

捆绑

捆绑选项。

bundle

  • type: object
  • default: { compositionOnly: true, runtimeOnly: false, fullInstall: true, dropMessageCompiler: false }

配置 nuxt i18n 模块的捆绑优化。

支持的属性:

compositionOnly

  • type: boolean
  • default: true

是否仅使用 vue-i18n 的组合 API。默认情况下,遗留 API 会被树摇(tree-shaken)。有关更多详细信息,请参见 这里

如果您希望使用 Vue I18n 的遗留 API,必须将 compositionOnly 设置为 false请注意,设置此值将禁用 Vue I18n 组合 API。注意,通过在 i18n.config 中将 Vue I18n 选项设置为 allowComposition: true,也可以以混合方式使用遗留 API,但这有一定限制。有关详细信息,请参见 这里

runtimeOnly

  • type: boolean
  • default: false

在构建中是否自动使用 Vue I18n 运行时(runtime-only)。

当您启用此选项时,vue-i18n 消息编译器将不被捆绑。这意味着您将无法从后端 API 动态检索用于应用程序的区域消息,或者以编程方式组合区域消息。也就是说,您必须能够在构建时完全解析区域消息

fullInstall

  • type: boolean
  • default: true

是否安装完整的 API、组件等。默认情况下,所有组件将被安装。如果指定为 false,内置组件(i18n-ti18n-di18n-n)和指令(v-t)将在 Vue 中不被安装,并且将被冻结(tree-shaken)。有关更多详细信息,请参见 这里

dropMessageCompiler

  • type: boolean
  • default: false

在捆绑时是否去除消息编译器。

如果使用此选项,您需要启用 compilation.jit 选项。
如果您启用此选项,您应该检查应用程序中的资源是否与 nuxt i18n 模块进行预编译。如果您将通过 API 从后端动态加载资源,启用此选项将无法工作,因为没有消息编译器。

onlyLocales

  • type: string | string[]
  • default: undefined

指定需要包含的语言代码,其他将被移除。

如果您有一个代码库(例如 Nuxt Layers)用于几个使用不同语言的相似项目,这将会很有用。

选项的值将不会与其他 Nuxt Layers 合并。此选项仅应在最终项目配置中指定。