Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

《深入浅出Vue.js》第二篇虚拟DOM读书笔记 #3

Open
Irene200825 opened this issue Sep 2, 2020 · 2 comments
Open

《深入浅出Vue.js》第二篇虚拟DOM读书笔记 #3

Irene200825 opened this issue Sep 2, 2020 · 2 comments

Comments

@Irene200825
Copy link
Owner

Irene200825 commented Sep 2, 2020

虚拟DOM

  • jQuery和 vue.js的区别?

jQuery是命令式操作DOM,vue.js是声明式操作DOM。命令式是通过命令每一步去做,达到想要的效果。声明式是告诉对方想要的效果,不需要关心如何去做。

  • 虚拟DOM运作原理?

通过状态生成一个虚拟节点树,然后使用虚拟节点树进行渲染。在渲染之前,会使用新生成的虚拟节点树和上一次生成的虚拟节点树进行对比,只渲染不同的部分。

  • vue.js为什么使用虚拟DOM?

避免不必要的DOM操作,节省一定的性能开销。

由于使用变化侦测可以更改细粒度。vue.js1.0因为细粒度太细,内存和依赖追踪开销过大。Vue.js2.0采用中等粒度,组件级别是一个Watcher实例,组件内部采用虚拟DOM渲染视图,大大缩减依赖数量和Watcher数量。

参考 刘博文的《深入浅出Vue.js》

@Irene200825
Copy link
Owner Author

Irene200825 commented Sep 2, 2020

状态->虚拟节点树->视图

参考 刘博文的《深入浅出Vue.js》
参考 揭秘Vue中的Virtual Dom
参考 Vue源码剖析——render、patch、updata、vnode

@Irene200825
Copy link
Owner Author

Irene200825 commented Sep 2, 2020

新旧虚拟节点树怎么比对

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant