#独家
如何保证table组件在使用状态的时候,即时更新数据?

2023-07-22 0 1,920

我在使用zustand做状态管理的时候,

在组件tsx文件内:

  const { projs, getProjs } = useStore()

  useEffect(() => {
    const data = getProjs()
    console.log(' data: ', data, projs)  // 打印: data: undefine []

  }, []); 

projs.store.ts中:

  projs: [],
  getProjs: (ipcRenderer) => {

    ipcRenderer.invoke('getProjs').then((res) => {
      console.log("projs:", res)  // 这里有打印数据 [{...}]
      // set到state
      set({projs: res.data})
    })
  }

但是现在有一个问题,
就是我一个table在组件.tsx中使用projs状态,但是我使用的时候,还未执行set({projs: res.data}),所以是没有数据的。
请问,我要怎么才能保证table是在有数据了之后也即时更新table内容为有数据呢?

<ProForm<{
      table: DispsysProjs[];
    }>
      formRef={formRef}
      initialValues={{
        table: projs,
      }}
      ....
useEffect(() => {
  formRef.current?.setFieldsValue({
    table: projs,
  });
}, [projs]);  
const [tableData, setTableData] = useState<DispsysProjs[]>([]);
seEffect(() => {
  setTableData(projs);
}, [projs]);
<ProForm<{
      table: DispsysProjs[];
    }>
      formRef={formRef}
      initialValues={{
        table: tableData,
      }}
收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

1. JK下载官网所有资源来源于开发团队,加入会员即可下载使用!如有问题请联系右下角在线客服!
2. JK下载官方保障所有软件都通过人工亲测,为每位会员用户提供安全可靠的应用软件、游戏资源下载及程序开发服务。
3. JK开发团队针对会员诉求,历经多年拥有现今开发成果, 每款应用程序上线前都经过人工测试无误后提供安装使用,只为会员提供安全原创的应用。
4. PC/移动端应用下载后如遇安装使用问题请联系右下角在线客服或提交工单,一对一指导解决疑难。

JK软件下载官网 技术分享 如何保证table组件在使用状态的时候,即时更新数据? https://www.jkxiazai.com/2173.html

JK软件应用商店是经过官方安全认证,保障正版软件平台

相关资源

官方客服团队

为您解决烦忧 - 24小时在线 专业服务