# reactive函数
# 作用
定义一个对象类型的响应式数据。基本类型不用该函数,用ref函数
# 语法
const 代理对象= reactive(源对象)
接收一个对象(或数组),返回一个代理对象(Proxy的实例对象,简称proxy对象)
- reactive定义的响应式数据是“深层次的”。
- 内部基于 ES6 的
Proxy
实现,通过代理对象操作源对象内部数据进行操作。响应式原理
# 注意
在使用reactive的时候,我们往往从后台得到数据之后直接赋值,会发现没有响应式了,道理很简单,你替换了那个具有响应式的对象,给变量了一个新的地址,解决也很简单,起一个对象的属性名,如果是数组的话,可以先把数组的length=0,然后在利用push(...arr)
# 定义对象
setup(){
var userobj = reactive({
name:'',
age:''
});
// 获取reactive中定义的数据
const getReactiveData = ()=>{
console.log(userobbj.name)
}
// 设置[修改]reactive中定义的数据
const setReactiveData = ()=>{
userobj.name = 'reactiveData'
}
return {
userobj,
getReactiveData,
setReactiveData
}
}
← ref函数 reactive对比ref →