react如何同步获取useState的最新状态值
更新时间:2024年01月03日 09:08:18 作者:ass_ace
这篇文章主要介绍了react如何同步获取useState的最新状态值问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
react同步获取useState的最新状态值
新的react hook写法
官方默认setState方法移除了回调函数,但我们有时候的业务场景需要我们同步拿到变量的最新变化值
以便做下一步操作,这时我们可以封装一个hook通过结合useref通过回调函数来拿到最新状态值。
代码如下
import {useEffect, useState, useRef} from "react"; function useCallbackState1 (state) { const cbRef = useRef(); const [data, setData] = useState(state); useEffect(() => { cbRef.current && cbRef.current(data); }, [data]); return [data, function (val, callback) { cbRef.current = callback; setData(val); }]; } export {useCallbackState};
使用的时候像平常一样
回调函数可以传可以不传递
const [data,setData] = useCallbackState({}); setData({}, function (data) { console.log("啦啦啦,我是回调方法", data); })
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。
相关文章
React使用xlsx和js-export-excel实现前端导出
这篇文章主要为大家详细介绍了React如何分别使用xlsx和js-export-excel实现前端导出功能,文中的示例代码讲解详细,感兴趣的小伙伴可以了解下2024-02-02react umi 刷新或关闭浏览器时清除localStorage方式
这篇文章主要介绍了react umi 刷新或关闭浏览器时清除localStorage方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教2023-10-10使用 React 和 Threejs 创建一个VR全景项目的过程详解
这篇文章主要介绍了使用 React 和 Threejs 创建一个VR全景项目的过程详解,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下2021-04-04
最新评论