在我遇到這個問題之前我使用了 redux,這個問題沒有發生?,F在我改變了我的方法,我遇到了這個問題。在我的主頁上,我決定獲取我需要的數據并將其存儲在 sessionStorage 中,然后當用戶單擊產品時,它會被重定向到一個模板,我只想在其中填寫值。每當我輸入像 data.title 這樣的對象時,我就會得到未定義(我知道它是因為 useEffect 在渲染周期之后運行)。我應該如何在這里進行?我要么從 sessionStorage 中選擇值,要么獲取它,請參閱我的 useEffect 代碼: useEffect(() => {try { if ( sessionStorage.length > 0 && sessionStorage.getItem(title).length > 0 ) { const nData = JSON.parse(sessionStorage.getItem(title)); const fData = filterProd(nData, id); setData(() => fData); } else { fetchFiles(`http://localhost:3000/api/prods?id=${id}`, setData); }} catch (error) { history.push('/');} }, []);這種方法沒有問題,當我想使用解析的數組/對象并銷毀它時,問題就開始了。因為 useEffect 在第一次運行渲染過程之后運行,所以它會選擇默認狀態,即空 []。解析后我收到了正確的數組,它看起來像這樣:[{ artcategory: "jacket" brand: "The North Face" category: "men" description: "Outdoorjacke" details: "Unterlegter Rei?verschluss, Abdeckleiste, Zwei-Wege-Rei?verschluss, Stickerei" folder: "newFall2020" id: "b77a14f0-fd25-11ea-95f1-ff14921ff326" photos: (3) ["/newFall2020/b7164a10-fd25-11ea-95f1-ff14921ff326-ja1.png", "/newFall2020/b71845e0-fd25-11ea-95f1-ff14921ff326-ja2.png", "/newFall2020/b77a14f0-fd25-11ea-95f1-ff14921ff326-ja3.png"] price: 291.95 rating: 0 size: (5) ["XS", "S", "M", "L", "XL"] subcategory: "clothing" title: "ZANECK JACKET UTILITY" }]在這個對象中,我有一個額外的數組,我在其中存儲圖像的路徑。
從 React State 的哪里銷毀數組中的對象
撒科打諢
2023-05-25 16:30:35