doubleyong
管理员
管理员
  • 最后登录2025-12-02
  • 发帖数1198
  • 最爱沙发
  • 喜欢达人
  • 原创写手
  • 社区居民
  • 忠实会员
阅读:4415回复:0

[react]useState异步问题的解决方案

楼主#
更多 发布于:2022-03-16 15:25
问题描述:
    在hooks中,修改状态的是通过useState返回的修改函数实现的.它的功能类似于class组件中的this.setState().而且,这两种方式都是异步的.可是this.setState()是有回调函数的,那useState()呢?


解决方案:
   useState没有回调函数;如果想使用修改后的状态值 ,需要结合useEffect 实现;


具体案例:
  注:不要形成死循环
const [test,setTest] = useState(1)
    const init=()=>{
        setTest(2)
        console.log('jjjj',test)
    }
  useEffect(()=>{
          // 此处写test 修改后,要进行的逻辑操作
         // 注:不要在这里进行test 修改,否则会形成死循环
  },[test])


参考:https://www.cnblogs.com/Shyno/p/14307120.html

最新喜欢:

胡安洋胡安洋
知识需要管理,知识需要分享
游客


返回顶部

公众号

公众号