reactjs - 如何在 useState Hook 之后立即执行函数?

标签 reactjs react-hooks

在类组件中,我能够执行以下操作:

this.setState({loading: true}, () => console.log('state updated'));

使用 useState 的功能组件中的等价物是什么?

最佳答案

如果您想要在设置状态后执行其他逻辑,这些逻辑通常会包装在特定于正在执行的操作的处理函数中:

import React, { useState } from 'react'

const Component = () => {
  const [loading, setLoading] = useState(false)

  const handleLoading = () => {
    setLoading(true);
    console.log('state updated');
  }

   return <button onClick={handleLoading}>Click Me</button>;
}

注意:正如 @Federkun 下面所指出的,这不会为您提供刚刚设置的状态,因为组件尚未重新渲染。

关于reactjs - 如何在 useState Hook 之后立即执行函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59001962/

相关文章:

reactjs - 如何修复引用错误: Blob is not defined issue when using heic2any library in nextjs?

javascript - Next.JS - "use client"指令产生错误

reactjs - 如何在没有 useEffect 或 setState 函数的情况下重新触发钩子(Hook)?

javascript - 在 React 中,如何在多个选择下拉菜单之间更新状态,每个下拉菜单都有相同的选项?

javascript - 在 React JS 中使用 react-draft-wysiwyg 下拉菜单不起作用

javascript - 在渲染 react Hook 之前等待 API 数据

reactjs - 从按钮单击 React 获取名称

javascript - react-native-maps 无法在无状态组件中引用 MapView

reactjs - 如何将 firebase 与 React 功能组件同步?

html - 在React中使用callback ref修改scrollLeft属性