react 中render方法渲染的是真的dom还是虚拟dom?
react什么时候把虚拟dom渲染成dom?
react + redux 配合,reducer返回新的对象时(新的state),redux如何把新对象更新到state?
我也是初学react不久,根据我自己的理解讲讲,有问题希望大侠们帮忙指正。
react首先渲染的DOM是虚拟DOM,然后在渲染在真实DOM上,比如首次进入页面,先把虚拟DOM渲染出来,然后再把真实DOM渲染出来,然后当你的页面需要更新的时候,先渲染出了虚拟DOM,这个虚拟DOM会与真实DOM进行比较,只在真实DOM需要更新的地方进行渲染。
2.在ReactDOM.render(Component,container)的时候渲染上去的,react有几个生命周期概念,可以让你在不同周期做一些事情。
3.这个问题没怎么看明白。reducer接受的是一个action和一个旧的state,返回一个新的state。 reducer中通过对action进行匹配,找到对应的action,然后可以进行一个数据上的传递
react原理建议找官方文档,也有很多中文博客,既然能问出这样层次的问题,个人觉得找问题答案的方法要更好。
redux这个问题,看一下redux的createStore.js,几十行而已,除去参数检查就更没多少了。
渲染的虚拟dom,算法叫diff算法吧,结果是比操作真实dom要快