Vite Reactjs網站應用程式在生產環境中未呼叫API,但在本機上正常運行
P粉794177659
2023-08-10 16:32:46
<p>我正在嘗試在Netlify上部署我的應用程式。登入頁面會取得一系列圖片以建立畫廊效果。
本機上的登入頁面
在本地機器上運行良好,但在部署之後,API沒有被調用,並且應用程式處於載入狀態。
Netlify伺服器上的登入頁面。
我在開發工具的網路標籤中發現API在本機上被呼叫了
本地主機網路選項卡
並且在開發伺服器上API請求沒有被觸發。
部署伺服器網路選項卡。 </p>
<p>API呼叫的程式碼是
API呼叫代碼</p>
<p>我不知道該怎麼辦。我正在嘗試使API在生產環境中正常工作。 </p>
在你的
useEffect
中,你沒有呼叫fetchImage
,而是在回它。將
修改為
或直接
之所以在本地環境下能夠運行,原因有點有趣。當你在
useEffect
鉤子函數中傳回一個函數時,它將在元件的銷毀階段使用,這表示當React卸載元件時會呼叫該函數。在開發模式下,React在掛載元件後會卸載和重新掛載元件,從而呼叫fetchImage
- 你的銷毀函數。而在生成環境中不會這麼做。