我想知道,如果用户在下面的某个位置(例如,嵌套在Navigation
中)注销,我如何才能回想起validateToken
FETCH.清除user
变量(或将用户设置为该变量)的好方法是什么?
Layout.tsx:
import { cookies } from "next/headers";
export default function RootLayout({
children,
}: {
children: React.ReactNode;
}) {
const response = await validateToken(cookies());
let user = null;
if (response.success) user = response.data;
return (
<html lang="en">
<body>
<Navigation user={user}
{children}
</body>
</html>
);
}
当我刷新页面时,user
个数据始终是最新的,因此服务器端运行正常.
完整代码可在此处找到: https://github.com/lextoc/tracky-next个