vue-i18n在使用$t时提示类型错误

1. 问题描述

Vue3项目中,使用vue-i18n,在模版中使用$t时,页面可以正常渲染,但是类型报错。

相关依赖版本如下:

json 复制代码
"dependencies": {
    "vue": "^3.4.29",
    "vue-i18n": "^9.14.0",
    // 其它依赖
},

2. 解决方法

手动给 $t 添加类型声明。

创建一个类型声明文件vue-i18n.d.ts,并将其添加到 tsconfig.json 配置文件的 include 配置项中。文件内容如下:

ts 复制代码
export {};

declare module '@vue/runtime-core' {
    // 提供全局属性 `$t`
    interface ComponentCustomProperties {
        $t: (message: string) => string;
    }
}

参考文档

相关推荐
路光.5 小时前
Vue3实现锚点定位
前端·javascript·vue.js·vue3
wocwin4 天前
uniapp微信小程序封装navbar组件
微信小程序·uni-app·vue3·组件封装·navbar
留白声6 天前
uniapp主题切换功能,适配H5、小程序
前端·css·小程序·uni-app·vue3·主题切换
dr李四维9 天前
uniapp从 vue2 项目迁移到 vue3流程
javascript·vue.js·uni-app·vue3·vue2·vuex·vue迁移
Jiaberrr13 天前
Vue 3 中使用 vue - pdf - embed + vue3 - pdfjs 在线预览 PDF
前端·javascript·vue.js·前端框架·pdf·vue3
努力做大神15 天前
uniapp vue3项目定义全局变量,切换底部babar时根据条件刷新页面
uni-app·vue3
柒@宝儿姐17 天前
如何判断一个项目用的是哪个管理器
前端·javascript·vue.js·vue3
爱看书的小沐17 天前
【小沐学Web3D】three.js 加载三维模型(vue3)
javascript·vue·vue3·webgl·three.js·opengl·web3d
山闻愚21 天前
创建Electron35 + vue3 + electron-builder项目,有很过坑,记录过程
vue3·electron35
谈谈叭22 天前
代码优化——基于element-plus封装组件:表单封装
开发语言·前端·javascript·性能优化·vue3·vite·element-plus