关注本站公众号,
获取永久访问授权码
扫码关注,回复『刷题』即可.
~技术问答题~
返 回

No.834 Vue3.0 为什么要用proxy?

题目描述~ 略...

寄语:问题比答案更重要

建议自己先有个思考的过程,有了自己的答案或者疑问再看解析进行对比。

目前解析在逐步添加中,也可以跳转链接查看。

在Vue2 中, 0bject.defineProperty 会改变原始数据,而Proxy 是创建对象的虚拟表示,并提供set 、get 和deleteProperty 等 处理器,这些处理器可在访问或修改原始对象上的属性时进行拦截, 有以下特点∶

不需用使用Vue.$set 或Vue.$delete 触发响应式。

全方位的数组变化检测,消除了Vue2 无效的边界情况。

支持Map,Set,WeakMap 和WeakSet。

Proxy 实现的响应式原理与Vue2 的实现原理相同,实现方式大同小 异∶ get 收集依赖

Set、delete 等触发依赖

对于集合类型,就是对集合对象的方法做一层包装:原方法执行后执 行依赖相关的收集或触发逻辑。

解析或答案仅供参考。

关于作者

zz_jesse 专注前端

掘金 我的开源项目

公众号@前端技术江湖

一个可以帮开发者成长的公众号前端面试题库更新通知前端学习资料、干货文章

技术交流群

交流中成长大厂内推机会