我有以下路线 "/event/:eventId"
当用户从首页进入然后点击即时贴时,它会重定向到事件页面(到目前为止一切正常)
但是在事件页面内部,我还有其他卡可以重定向到具有不同ID的其他事件页面作为路由参数,然后单击然后仅更改路径但不会重新呈现该页面。
看来,如果我在具有相同路径名的页面中,则路由参数是否更改都没有关系,它不会重新呈现该页面。
我尝试使用<Link>
组件代替,history.push
但是它也不起作用。
那就是重定向功能:
const onCardClick = () => {
history.push(
EVENT_PAGE_LOCATION.toUrl({
eventId: event?.id,
}),
);
};
因此,事实证明页面已被重新渲染,但是并没有被卸载并且为了再次执行graphql查询。
所以这很重要,React Router不会卸载页面。
每当参数更改时,我都必须重新获取查询:
useEffect(() => {
refetchEvent()
}, [params])
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句