给自己看得模仿简单的双向绑定原理

65 阅读1分钟

一起养成写作习惯!这是我参与「掘金日新计划 · 4 月更文挑战」的第1天,​

 ​ 最近空闲研究了一下vue2的双向绑定,vue3的暂时没有去了解 vue2的双向绑定原理是通过数据劫持结合着发布者--订阅者模式的方式来实现的,我们可以先来看一下通过控制台输出一个定义在vue初始化数据上的对象是个什么东西。 这里利用到的是Object.defineProperty()  这个方法 Object.defineProperty( )是用来做什么的?它可以来控制一个对象属性的一些特有操作,比如读写权、是否可以枚举 它会直接在一个对象上定义一个新属性,或者修改一个对象的现有属性,并返回此对象。

get和set的使用方法:

  1. get和set是方法,因为是方法,所以可以进行判断

  2. get一般是要返回的;而set是设置,不用返回

  3. 如果调用对象内部的属性约定的命名方式是变量名前加_

即get是对象的属性值返回的方法,set是属性值修改的方法

查找文档中的一个特定的元素,最有效的方法是 getElementById()。

在操作文档的一个特定的元素时,最好给该元素一个 id 属性,为它指定一个(在文档中)唯一的名称,然后就可以用该 ID 查找想要的元素。

事件捕获,从dom结构上到下,window.addEventListener先于document.addEventListener被捕获

事件冒泡,从dom结构底层向上传递,document.addEventListener先于window.addEventListener被触发

在addEventListener第三个参数处可指定事件是否在捕获或冒泡阶段执行。

 

\