react的渲染机制

在做react的项目开发中,由于项目需要,自己封装了一个通过下拉框筛选得到不同数据的图表,echart没有合适的图表,就手绘了一个。图表是一个横向的柱状图,当react渲染的时候会有一个加载动画,遇到的问题是加载动画只在第一次加载~

然后让我们先回顾一下react的渲染机制,我们都知道react有一个虚拟dom的概念,当渲染的时候react会比较两个虚拟dom的节点;1.节点相同,属性不同---react会对属性进行重设,从而实现节点的转换;2.节点不同---react会直接删除之前的节点,重新绘制。ok,找到问题的原因了~那么在react中怎么去重新渲染dom呢?

有两种比较简单的方法:

1.重新绘制的时候改变你的dom结构

2.更新组件的key值,react会认为你更新了dom节点

 

 

找到问题原因之后解决起来还是比较简单的,希望对你有所帮助~

 

追加:react监听屏幕尺寸的变化

1.在componentDidMount中加入监听

window.addEventListener("resize", this.resize.bind(this));

2.在componentWillUnmount中取消监听

window.removeEventListener("resize", this.resize.bind(this));
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值