
vue
文章平均质量分 57
Estelle_qi
这个作者很懒,什么都没留下…
展开
-
vue的路由模式
hash模式URL 中带有 “#” 则为 hash 模式,hash 模式 “#” 之前的内容会被包含在请求中,之后的不会包含在请求中。工作原理hashchange 事件,可以在 window 对象上监听 hash 的变化。window.onhashchange = function(event){ console.log(event.oldURL, event.newURL); console.log(location.hash);}特点1、改变 URL 不会触发页面重新加载,不算是原创 2021-04-11 10:36:42 · 144 阅读 · 0 评论 -
Vue的生命周期详解
声明周期解释操作beforeCreate()在实例初始化后,this 指向创建的实例,不能操作 DOM 节点请求资源、数据created()实例已经创建完成之后被调用,DOM 未生成改变data中的数据,获取computed中的计算属性beforeMount()在挂载开始之前调用,data 已初始化,为虚拟 DOMmount()挂载到实例上之后调用,可以操作 DOM 节点ajax请求beforeUpdate()数据更新时调用,发生在虚拟 DOM...原创 2021-03-29 10:18:33 · 220 阅读 · 0 评论 -
vue的diff算法
数据变化时vue进行节点更新问题:有时修改了某个数据,如果直接渲染到真实 DOM 上会引起整个 DOM树的重绘和重排。解决:先根据真实 DOM 生成一颗 virtual DOM,计算 virtual DOM 中节点数据变化的部分,将该部分进行原生 DOM 操作,而不用重新渲染整个页面。virtual DOM用 js 对象结构表示 DOM 树的结构,然后用这个树构建一个 真正的 DOM 树,插入到文档当中。当状态变更的时候,重新构造一棵新的对象树。然后用新的树和旧的树进行比较,记录两棵树的差异。把所记原创 2021-03-29 09:48:25 · 281 阅读 · 0 评论 -
Vue的数据双向绑定
双向绑定原理vue数据双向绑定是通过数据劫持结合发布者-订阅者模式的方式来实现的。数据劫持:是在访问或者修改对象的某个属性时,拦截这个行为,进行额外的操作或者修改返回结果。1、监听器Observer:通过 Object.defineProperty 的getter和setter进行读取和赋值的属性来劫持并监听所有属性,如果有变动的,就通知订阅者。2、订阅者Watcher:可以收到属性的变化通知并执行相应函数,从而更新视图。3、解析器Compile:可以扫描和解析每个节点的相关指令,并根据初始原创 2021-03-28 23:05:02 · 300 阅读 · 0 评论