Vue I18n

Related Vue I18n options.


  • type: object or string
  • default: {}

Configuration for the vue-i18n library that is used internally by this module. See full documentation at

It's also supported to set this property to a path to a local configuration file. The file needs to export a function or plain object. If a function, it will be passed a Nuxt Context as a parameter. It's necessary to use that approach when overriding more complex types (like functions) that can't be stringified correctly.
import type { I18nOptions } from 'vue-i18n'
import type { NuxtApp } from 'nuxt/dist/app/index'
export default function (nuxt: NuxtApp) {
return {
modifiers: {
snakeCase: (str) => str.split(' ').join('-')
} as I18nOptions
The messages option cannot be included in an object and exported with function due to limitations in Vue I18n v9 handling of locale messages.As the workaround, you can use lazy-load transtions in Nuxt i18n module. locale messages handled with lazy-load transtions will be loaded as locale messges inside Vue i18n.