当数据来自 redux 存储时,useState() 在刷新时丢失状态数据

问题描述

我遇到了一个奇怪的问题,导致数据集未定义。我正在实施反应表(一个带钩子)。如果我使用 react-table 示例中的一个,它们会使用 makedata.js 并且它们的代码如下

const [data,setData] = useState(useMemo(() => makeData(20),[]) );

但我的代码只是将 makeData 替换为 API 调用后来自 redux 的数据。

//For setting data
useEffect(() => {
    if (!currentUser || !savedProjectId) {
      alert("Please Select A Project");
      return;
    }
    listenToProjectData(currentUser.clientId,savedProjectId);
  },[currentUser,savedProjectId,listenToGuests]);

// For setting state

 const [data,setData] = useState(
    useMemo(() => projectData,[projectData,loading])
  );

因此,当我们对代码进行更改时,react 呈现并且数据正常,即 data 不是未定义的。当我们转到其他页面并导航回该页面时也是如此。 当我们刷新页面时,data 未定义。

附言projectData 不是未定义的,只是在开始时,暂时是,但随后其中的数据更新,但未反映在我们的 data 状态中,刷新使 data 未定义,尽管我们正在使用 useMemo .

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)