Vue3报错:已声明“upperName”,但从未读取其值。ts-plugin(6133)

Vue3报错:已声明“upperName”,但从未读取其值。ts-plugin(6133)

报错显示:

类型“StoreToRefs<Store<"count", { sum: number; name: string; address: string; }, {}, { increment(value: number): void; }>>”上不存在属性“upperName”。ts-plugin(2339)

相关代码:

vue文件:

const {sum,name,address,enlargeSum,upperName} = storeToRefs(countStore)

ts文件:

getters:{
		enlargeSum:state => state.sum*10,
		upperName(state){
            return this.name.toUpperCase()
        }
}

代码解释及报错原因:

我是在定义一个对象的 getters 属性,包含了 enlargeSum 和 upperName 两个函数,我在 upperName 函数中使用了 this.name.toUpperCase() 来获取 name 属性的大写形式。然而 state 参数是作为第一个参数传入的,并不支持通过this来访问属性

解决方案:

应该使用第一个参数来访问 state ,而不是通过 this

把this改为state就不报错啦

return state.name.toUpperCase()
posted @   淡然置之  阅读(442)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 使用C#创建一个MCP客户端
· ollama系列1:轻松3步本地部署deepseek,普通电脑可用
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 按钮权限的设计及实现
点击右上角即可分享
微信分享提示