You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

vue-i18n在composition API中替代this.$i18n的使用方法是什么?

Vue3 Composition API 下vue-i18n 一行式设置翻译消息的方案

你完全可以省略i18n实例的变量赋值步骤,直接链式调用实现一行操作,效果和Options API中的this.$i18n.setLocaleMessage完全一致:

// 仅需在导入后直接在onMounted或setup内执行即可
useI18n().setLocaleMessage(locale, messages)

如果后续你在组件内还需要多次调用i18n相关方法,也可以提前解构出需要的方法,调用时更简洁:

import { useI18n } from 'vue-i18n'

export default {
  setup() {
    const { setLocaleMessage, t } = useI18n()
    
    onMounted(() => {
      // 直接调用方法即可,不需要额外前缀
      setLocaleMessage('en', { hello: 'Hello World' })
    })
    
    return { t }
  }
}

注意:以上写法生效的前提是你已经在项目入口文件(main.js/main.ts)中完成了i18n实例的全局注册。

内容的提问来源于stack exchange,提问作者RuneRasset

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.04 23:51:02