本篇文章带你深度剖析vue3响应式(附脑图),本文的目标是实现一个基本的vue3的响应式,包含最基础的情况的处理。
本文你将学到
- 一个基础的响应式实现 ✅
- Proxy ✅
- Reflect ✅
- 嵌套effect的实现 ✅
- computed ✅
- watch ✅
- 浅响应与深响应 ✅
- 浅只读与深只读 ✅
- 处理数组长度 ✅
- ref ✅
- toRefs ✅
一. 实现一个完善的响应式
所谓的响应式数据的概念,其实最主要的目的就是为数据绑定执行函数,当数据发生变动的时候,再次触发函数的执行。(学习视频分享:vue视频教程)
例如我们有一个对象data
,我们想让它变成一个响应式数据,当data
的数据发生变化时,自动执行effect
函数,使nextVal
变量的值也进行变化:
// 定义一个对象 let data = { name: 'pino', age: 18 } let nextVal // 待绑定函数 function effect() { nextVal = data.age + 1 } data.age++