11.vue 虚拟 DOM 的理解
Web 界面由 DOM 树 (树的意思是数据结构) 来构建,当其中一部分发生变化时,其实就是对应某个 DOM 节点发生了变化,虚拟 DOM 就是为了解决浏览器性能问题而被设计出来的。如前,若一次操作中有 10 次更新 DOM 的动作,虚拟 DOM 不会立即操作 DOM,而是将这 10 次更新的 diff 内容保存到本地一个 JS 对象中,最终将这个 JS 对象一次性 attch 到 DOM 树上,再进行后续操作,避免大量无谓的计算量。所以,用 JS 对象模拟 DOM 节点的好处是,页面的更新可以先全部反映在 JS 对象 (虚拟 DOM) 上,操作内存中的 JS 对象的速度显然要更快,等更新完成后,再将最终的 JS 对象映射成真实的 DOM,交由浏览器去绘制。采用了新旧 DOM 的对比,获取差异的 DOM,最后一次性的更新到真实 DOM 上。
12.vue 的 kepp-alive
13.watch 和计算属性
14. 自定义指令
15. 组件之间的通信