扫码关注官方订阅号
如图,输出了两次state的值(不明白为什么),但只需要后面一个,render里面不能直接取setstate后的值吗?
闭关修行中......
弄清楚React的生命周期之后就清楚了。第一次初始化的时候render执行了一次。然后setState又执行了一次。
React
render
setState
因为 didmount 是最后执行的(生命周期的最后一个), 之前执行过一遍 render 了
didmount
等获取到数据后又 setState 又会 render 一次 所以就变两次了
因为插入组件的时候render了一次 拿到数据又会render一次 如果只想渲染一次的话render的返回值外面包个p 然后
shouldComponentUpdate(nextProps, nextState) { return Boolean(this.state.data); }
初次 render 和重新 render 。
微信扫码关注PHP中文网服务号
QQ扫码加入技术交流群
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
PHP学习
技术支持
返回顶部
弄清楚
React的生命周期之后就清楚了。第一次初始化的时候
render执行了一次。然后setState又执行了一次。因为
didmount是最后执行的(生命周期的最后一个), 之前执行过一遍render了等获取到数据后又 setState 又会 render 一次 所以就变两次了
因为插入组件的时候render了一次 拿到数据又会render一次 如果只想渲染一次的话render的返回值外面包个p 然后
初次 render 和重新 render 。