关于React 中出现值更新了界面没更新的问题
react中数组如果引用地址不变,是不触发重新渲染的,但是值是设置进去了或const [lists,setLists] =useState([]);…const arr = […lists];//克隆的时候改变地址arr.splice(index,1)setLists(arr);这里要根据react的渲染机制源码,因为react 会判断旧状态和新状态是否有变化,如果没有变化就不渲染,所以要改变地址
·
一:引用地址没变导致的
react hooks中useState更新值后经常会出现值更新不及时的bug
react中数组如果引用地址不变,是不触发重新渲染的,但是值是设置进去了
这里要根据react的渲染机制源码,因为react 会判断旧状态和新状态是否有变化,如果没有变化就不渲染,所以要改变地址告诉render 是新状态要重新渲染
原文链接:
https://blog.csdn.net/weixin_45621877/article/details/108720014
二:Input 的 defaultValue 绑定的问题
在表单中设置了默认值 defaultValue={weight}
修改为 value={weight} 即可解决,不过要添加 readOnly 属性
具体可参考:
https://hbiao68.blog.csdn.net/article/details/86320436
https://blog.csdn.net/weixin_43851769/article/details/88100078
更多推荐
已为社区贡献11条内容
所有评论(0)