我有一个使用 vue-i18n 的打字稿 Vue.js 应用程序,我想将它移植到 Nuxt.js。在 Vue.js 应用程序中,我通过调用在一个文件中初始化 i18n
// Create VueI18n instance with options
const i18n = new VueI18n({
locale: 'ja', // set locale
messages, // set locale messages
})
为了从模板中无法访问的代码位置(Vue 操作等)访问 i18n 实例{{ $t('my.translation.key' }}
,我从实例化它的文件中导出了i18n
对象,然后通过调用i18n.t('my.translation.key')
检索翻译和其他属性(如当前属性)来访问它活跃的语言。
现在,使用 nuxt.js 和 nuxt-i18n,没有这样的显式初始化,并且通过在 Nuxt 配置中配置 nuxt-i18n,一切都“神奇地”发生了。
然后如何在模板之外的操作/其他代码位置访问 i18n 实例?我尝试使用just this.$i18n.t(...)
,但这不起作用。另外,如果我import Vue from 'vue'
尝试通过它调用它Vue.$i18n.t(...)
也不起作用。如何访问 i18n 实例?