我正在使用 Material-ui 的标签页(Tabs),它们是可控制的。我将它们用于 (React-router) 链接,如下所示:
<Tab value={0} label="dashboard" containerElement={<Link to="/dashboard/home"/>}/>
<Tab value={1} label="users" containerElement={<Link to="/dashboard/users"/>} />
<Tab value={2} label="data" containerElement={<Link to="/dashboard/data"/>} />
如果我当前正在访问dashboard/data,然后我单击浏览器的后退按钮,我会进入(例如)dashboard/users,但是突出显示的选项卡仍然停留在dashboard/data(value=2)
我可以通过设置状态来更改,但我不知道如何处理浏览器后退按钮被按下时的事件?
我找到了这个:
window.onpopstate = this.onBackButtonEvent;
但是每次状态变化时都会调用它(不仅在后退按钮事件上)。
useEffect(()=>{/* 这里 */}, [])
。 - Hyzyr