ant-design form initialValues赋值state的坑

项目中需要将Form表单赋值初始值以供修改,但是我用useState设置了选中的值然后initialValues赋值却发现,点击出来显示的始终是上一次点击的值,然后用p标签重新显示这个state,发现又是最新的。

用useEffect也不起作用。我就放弃了使用initialValues,然后使用form.setFieldsValue()直接给form设置值。这下就行了

复制代码
   <ModalForm
        title="修改日程"
        open={modalVisit1}
        onFinish={async (values: any) => {
          console.log(values);
          const params={
            ...values,
            id: id
          }
          const res=await scheduleService.updateSchedule(params)
          if(res.success){
            message.success('修改成功'); // 提示用户提交成功
            const res=await scheduleService.getScheduleList()
            console.log(res.data);
            setMatchList(res.data)
          }
          return true;
        }}
      onOpenChange={setModalVisit1}
      // initialValues={updateRecord}
        form={form1}
        width={'40%'}
        modalProps={{
          destroyOnClose: true,
        }}
const [form1] = Form.useForm();

 form1.setFieldsValue(res.data)

React hooks 不能拿到最新的的setState的值

复制代码
  useEffect(() => {
    setUpdateRecord(updateRecord)
    console.log(updateRecord);
  }, [updateRecord]);
相关推荐
Mintopia6 分钟前
别再迷信“最佳实践”:适合你项目的才是对的
前端·架构
console.log('npc')6 分钟前
react弹窗组件
前端·javascript·react.js
LlNingyu13 分钟前
文艺复兴,什么是CSRF,常见形式(二)--SameSite属性
前端·网络·安全·web安全·csrf
紫_龙17 分钟前
最新版vue3+TypeScript开发入门到实战教程之组件通信之一
前端·vue.js·typescript
yivifu22 分钟前
接近完美的HTML文本双行合一排版
前端·javascript·html·双行合一
fxshy23 分钟前
前端直连模型 vs 完整 MCP:大模型驱动地图的原理与实践(技术栈Vue + Cesium + Node.js + WebSocket + MCP)
前端·vue.js·node.js·cesium·mcp
鹏程十八少25 分钟前
10. Android Shadow是如何实现像tinker热修复动态修复so(源码解析)
android·前端·面试
destinying28 分钟前
性能优化之项目实战:从构建到部署的完整优化方案
前端·javascript·vue.js
我命由我1234531 分钟前
React - React Redux 数据共享、Redux DevTools、React Redux 最终优化
前端·javascript·react.js·前端框架·ecmascript·html5·js
Jinuss33 分钟前
源码分析之React中的createContext/useContext详解
前端·javascript·react.js