如题:如何用useRef优化重复请求。
写业务代码,时而会遇见这种情况,如下伪代码:
useEffect(() => {
// api请求 ()
}, [a, b])
参数a来源某接口请求、参数b来源另外一个接口请求
毫无疑问,上面写法回调函数一定会进去两次,除了用参数校验
比如满足条件再进入api调用,还可以用useRef来暂存参数,而又不会引起页面的re-render。
比如api请求需要a参数,可以写成这样:
testRef.current = a;
if (testRef.current === a) return
这样无论useEffect进去多少次,只要参数a不变,api就只会调用一次。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。