vue3 在script标签中使用i18n的办法

vue2,在script中使用i18n的办法和在页面中一样使用$t即可,但是这个在vue3中并不生效。解决办法是,创建好i18n后,把i18n给 export default暴露出去。即:

const i18n = createI18n({
    
    
  locale: 'en',
  messages: {
    
    
    zh: Chinese,
    en: English,
  },
})
export default i18n

任何在要使用它的文件中,先将i18n给import导入进来:

import i18n from "../../main";

我们打印i18n可以看到:
在这里插入图片描述
而在global中,就有i18n的t,tc等方法在这里插入图片描述
所以我们只需要定义一个常量为:

const {
    
     t } = i18n.global;

任何使用t来代替$t皆可,如下:

	//file是定义的文件路径
   ElMessage.success(t(file.value+'message'));

猜你喜欢

转载自blog.csdn.net/weixin_45807026/article/details/126574607
今日推荐