在我的代码中,当我单击按钮组件Aaaaa
时未重新渲染,但是当我点击链接组件Aaaaa
时被重新渲染。我找不到原因吗?
function App() {
return (
<>
<button onClick={() => window.history.pushState('','','/about')}>About</button>
<Link to='/about'>to About</Link>
<Aaaaaa/>
</>
);
}
和:
Aaaaaa(){
const location = useLocation()
return <div>About </div>
}
[正确的方法是在尝试手动导航(通过单击按钮)时使用<Link to='/about'>to About</Link>
,在试图自动导航(例如完成API调用之后)时使用window.history.pushState('','','/about')
。
希望这会有所帮助。