计算属性值会基于其响应式依赖被缓存。一个计算属性仅会在其响应式依赖更新时才重新计算。
两种基本用法
vue.3.0 中用于从vue 按需导入 computed 计算属性。
1. 创建一个只读的计算属性
如果传入的是一个getter 函数,会返回一个不允许修改的计算属性。
const xxx = computed(() => xxx)
2. 创建一个可写的计算属性
如果传入一个对象,包含get 和 set 函数, 就可以创建一个可以修改的计算属性。
const data=computed({ //computed计算属性
get(){}, //得到数据
set(newValue){ } //修改数据
})
源码目前还看不懂呢,附上大佬的源码分析的链接看吧Vue3进阶之computed实现原理 - 掘金 (juejin.cn)