gpt4 book ai didi

javascript - 使用 react-router-dom v6.0.2 检测用户离开页面

转载 作者:行者123 更新时间:2023-12-05 00:27:16 27 4
gpt4 key购买 nike

我试图在导航到 ReactJS Web 应用程序中的其他路由或页面之前显示未保存更改的对话框。我尝试了与 Stackoverflow 不同的解决方案,但没有成功。大多数解决方案与旧版本有关。我需要版本 6.0.2 ( react 路由器dom)。任何可以帮助我的人都非常感激。

最佳答案

如何解决我的问题?
我没有降级,而是创建了两个自定义 Hook 。

  • useCallbackPrompt Hook
  • useBlocker Hook

  • useCallbackPrompt Hook
    这个钩子(Hook)处理一个弹出窗口,根据特定条件显示、隐藏和更新位置。
    它看起来如何。
    useCallbackPrompt Hook
    使用拦截器 Hook
    如果有任何更改,此 Hook 会阻止用户导航
    useBlocker Hook
    我如何在我的组件中使用 useCallbackPrompt
    component where I am using useCallbackPrompt hook
    我创建了状态 showDialog ;如果用户更改当前页面/表单上的某些内容,它将更新状态 showDialog如果用户试图离开,将显示提示,并询问用户是否想留下。
    这里是 Live Demo Link
    这里是 GITHUB REPO LINK
    Post的链接

    关于javascript - 使用 react-router-dom v6.0.2 检测用户离开页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/70288198/

    27 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com