vue3 setup computed 计算属性
简介:computed 计算属性 可以对当前实例上的数据进行计算,并缓存下来,只有当依赖的响应式数据改变时,才重进计算,否则每次取到的计算属性数据都是从缓存中取到的(>1)计算属性还是和vue2一样,没啥特别大的改变个人理解:计算属性,说白了也是实例数据的一种,只是这个属性依赖于当前实例的其他数据,并且居右缓存功能,就想我们在data中定义一个name并且初始化的时候给一个值,相对于data
·
简介:
computed 计算属性 可以对当前实例上的数据进行计算,并缓存下来,只有当依赖的响应式数据改变时,才重进计算,否则每次取到的计算属性数据都是从缓存中取到的(>1)
计算属性还是和vue2一样,没啥特别大的改变
**个人理解:**计算属性,说白了也是实例数据的一种,只是这个属性依赖于当前实例的其他数据,并且具有缓存功能,就像我们在data中定义一个name并且初始化的时候给一个值,相对于data中的初始化数据,只是一个依赖于其他的响应式数据进行改变的data数据
重点:计算属性不能对依赖数据进行赋值、修改,不能操作DOM,只能说是依赖于某个值得到某个值,其他的都不行
在vue3中,计算属性默认传输一个参数,就是数据的getter函数,如下图所示
可以看出,计算属性返回的是一个Ref对象,并且该对象只能只读,不能修改,如果我们尝试修改,程序不报错,但是计算属性的值没有变,这里计算属性的缓存特性就不贴图了,自己可以试验一下
在setup中使用计算属性/让计算属性可以修改,给计算属性对象中写set和get方法,如下所示:
const name = ref(1);
const newName=computed({
get:()=>{
console.log(`我是get函数值=======${name.value}`)
return name.value
},
set:(newValue)=>{
console.log(`我是set函数值======${newValue}`)
name.value = newValue
}
})
仅记录平常学习
更多推荐
已为社区贡献10条内容
所有评论(0)