Next.js-基于路由的模态

使用Next.js时,我想在另一页顶部显示基于URL的模式。

如果gallery.js是页面组件,我想/gallery/image/1232132在图库页面顶部显示一个带有图像的模式。

那可能吗?

飞云2020/04/07 11:48:55

是的!您可以使用window.history.pushState更改网址,而无需切换组件。

// Modal Button
<button onClick={() => {
    this.setState({ modal: true });
    window.history.pushState("","","/gallery/image/img_1233")
}}>
    Open Modal
</button>

//Link Button
<Link href="/gallery/image/img_1233">
    <a>Open Page</a>
</Link>

完整示例在这里:https : //github.com/mohammad-amin-hesam/react-modal-route-example