javascript—如何将useEffect与useContext一起正确使用并避免SSR带来的问题
发布时间:2022-05-25 19:57:02 403
相关标签: # 前端
我正在使用 Remix,并且在使用useEffectwith时遇到了问题,useContext因为在服务器上渲染时不支持上下文。例如,在下面的代码段中,我想导航 ifappContext.issues为 null 并解析文件。只是有大量额外的重复逻辑。我想在 之前获得早期回报useEffect,但这是不允许的。有任何想法吗?
export default function Results() {
const navigate = useNavigate();
const { index } = useParams();
const appContext = React.useContext(AppContext);
React.useEffect(() => {
if (appContext?.issues !== undefined && appContext?.issues === null) {
navigate("/app");
}
}, [appContext?.issues, navigate]);
React.useEffect(() => {
(async () => {
if (appContext?.files !== undefined && appContext?.files !== null && index !== undefined) {
const fileData = await parse(appContext?.files[parseInt(index)]);
appContext?.setFileData(fileData)
}
})()
}, [appContext?.files, appContext?.setFileData, index]);
if (appContext == null) {
return null;
}
if (index === undefined) {
return null;
}
}
特别声明:以上内容(图片及文字)均为互联网收集或者用户上传发布,本站仅提供信息存储服务!如有侵权或有涉及法律问题请联系我们。
举报