vue3响应式原理

  1.通过Proxy(代理):拦截对象中变化的任意属性,包括:属性值的读写、属性的添加、属性的删除等。

  2.通过Reflct(反射):实现对被代理对象的属性操作。

  MSN文档中描述的Proxy和Reflect:

    1.Proxy:https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Refrence/Gobal-Objecets/Proxy

    2.Reflect:https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Refrence/Gobal-Objecets/Reflect

  

复制代码
new Proxy(data,{
    //拦截读取属性值
    get(target,prop){
        return Reflect.get(target,prop)  
    },
    //拦截设置属性值或添加新属性
    set(target,prop,value){
        return Reflect.set(target,prop,value)  
    },
    //拦截删除属性
    deleteProperty(target,prop){
        return Reflect.deleteProperty(target,prop)  
    },
})

proxy.name = "jerry"
复制代码

  

posted @   清水紅葉  阅读(35)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!
点击右上角即可分享
微信分享提示