| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> JavaScript知识库 -> vue响应式原理--对了解父子组件通信很有帮助 -> 正文阅读 |
|
[JavaScript知识库]vue响应式原理--对了解父子组件通信很有帮助 |
我们都知道Vue通过MVVM思想实现数据的双向绑定,数据驱动页面视图。那它到底是如何进行双向绑定的呢?? 只要在?Vue?实例中声明过的数据,这个数据就是响应式的。 什么是响应式,即,数据发生改变的时候,视图会重新渲染,匹配更新为最新的值。 那么我们就会思考:?
这就涉及到Object.defineProperty。Vue 实现响应式的一个核心 API 是 基本用法:
使用?Object.defineProperty?可以为对象中的每一个属性,设置?get?和?set?方法? ? 那么 get?和?set?方法有什么用?
? ? ? ?data 中的声明的每个属性,都拥有一个数组(专属的依赖收集器 subs),保存着?谁依赖(使用)了?它。这样知道谁依赖他,就可以在其改变时,通知依赖他的页面进行更新。使用了?一个?dep?保存了?页面这个依赖,而保存的实际上是页面的 Watcher。
? ? ? 因而当数据改变时,触发?属性的?set?方法,Vue?就能知道数据有改变。当数据改变的时候,会遍历自己的依赖收集器?subs,逐个通知?watcher,让 watcher?完成更新。 关于如何监听 data 变化共定义了三个函数:
对于监听数组,是通过重写数组方法来实现?。 Object.defineProperty 缺点
? ? ? |
|
JavaScript知识库 最新文章 |
ES6的相关知识点 |
react 函数式组件 & react其他一些总结 |
Vue基础超详细 |
前端JS也可以连点成线(Vue中运用 AntVG6) |
Vue事件处理的基本使用 |
Vue后台项目的记录 (一) |
前后端分离vue跨域,devServer配置proxy代理 |
TypeScript |
初识vuex |
vue项目安装包指令收集 |
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/23 10:37:34- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |