// 定义一个shallowRef函数
// 之前都是返回代理对象,这里是返回对象
function shallowRef(target) {
return {
// 保存target数据
_target: target,
get value() {
console.log("劫持到了读取数据");
return this._target;
},
set value(val) {
console.log("劫持到了修改数据", val);
this._target = val;
},
};
}
// 定义一个ref函数, 传入对象的话要通过reactive处理
function ref(target) {
target = reactive(target);
return {
// 保存target数据
_target: target,
get value() {
console.log("劫持到了读取数据");
return this._target;
},
set value(val) {
console.log("劫持到了修改数据", val);
this._target = val;
},
};
}
vue3中手写实现shallowRef和ref
最新推荐文章于 2024-08-19 23:08:59 发布