其他分享
首页 > 其他分享> > vue3学习日志—03.reactive函数

vue3学习日志—03.reactive函数

作者:互联网

介绍

在上次ref的使用中我们提到,vue3对象的响应式通过reactive来实现。

示例

   setup(props,context){
  let data=reactive({
    name:'张三',
    age:18,
    hobby:['抽烟','喝酒','烫头']
  })
  function changeInfo() {
    data.hobby[0]='学习'
  }
  return{
    data,
    changeInfo
  }

}

vue3响应式原理解析

    const p=new Proxy(person,{
      //  读取属性时触发
      get(target,propName){
          return target[propName]
      },
      // 新增或修改属性时触发
      set(target,propName,value){
          target[propName]=value
      },
      /* 删除属性时触发 */
      deleteProperty(target,propName){
        delete target[propName]
      }
    })
 let x1= Reflect.defineProperty(person,'name',{
     get(){
       return 3
     }
   })  
 let x2= Reflect.defineProperty(person,'name',{
     get(){
       return 4
     }
   })

标签:03,target,Reflect,reactive,propName,vue3,defineProperty
来源: https://blog.csdn.net/weixin_45124398/article/details/120764279