react中如何迅速第一时间获取并渲染state状态值(与界面同步),如何延迟获取并渲染state状态值?

1.在大多数场景中,state值改变,希望页面马上更新渲染,那么如何做呢?
答:1)set状态值时通过函数返回
在这里插入图片描述
2)通过useRef实现缓存

 const filepath_=useRef<any>()
 filepath_.current=data
 //这种方式比setState快
 console.log("文件夹路径",filepath_);

2.在有些场景中希望延迟获取状态值A,比如有一个API的反应渲染较慢,过早拿到状态值判断而执行API可能导致API无返回值的情况(如openlayers地图要素过多,渲染过慢,比状态值的获取还慢)。
解决:1)设置定时器(不推荐)
2)在nextTick中set状态值,在nextTick中调用逻辑判断执行的函数。
3)再在一个异步函数(后端接口函数)中调用逻辑判断执行函数。

猜你喜欢

转载自blog.csdn.net/qq_37967853/article/details/129443625
今日推荐