1

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

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

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

//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是未定义的。

PS projectData 不是未定义的,只是在开始时,它是暂时的,但随后数据更新但它没有反映在我们的状态中&刷新虽然我们使用的是 useMemo ,但它data使未定义。data

4

0 回答 0