我遇到了這個問題,基本上我的組件使用了 useState() hook 來設置一些變量,但在使用路由進行導航時,狀態並沒有被更新。
事實證明,我的自定義 _app.js
代碼,這段代碼是我從教程中複製過來的,只是用於為應用添加全局樣式,其中存在著這段代碼:
export default function App({ Component, pageProps }) {
return <Component {...pageProps} />
}
我將其更改為:
import { useRouter } from 'next/router'
export default function App({ Component, pageProps }) {
const router = useRouter()
return <Component {...pageProps} key={router.asPath} />
}
這樣做後,它又按預期工作了。
我只需將路徑作為 key 添加即可。