【发布时间】:2017-08-24 15:10:24
【问题描述】:
在react-router v3 中,我一直在使用router.setRouteLeaveHook 检查表单是否有未保存的更改,如果有,则返回false 以防止转换。然后我会显示一个带有 3 个按钮的自定义引导模式对话框:Save Changes、Discard Changes 和 Stay Here。
我不能使用react-router v4 的Prompt 组件来执行此操作,因为无法自定义浏览器确认对话框中显示的按钮。他们似乎摆脱了任何取消转换的方法,只允许您在浏览器确认对话框中要求用户批准转换。
我尝试查看Prompt 但it just passes the dialog message to history 的代码,所以我不知道如何设置 v3 样式的路由离开钩子。
是否有可能,或者react-router 开发人员出于某种原因故意决定删除此功能?
【问题讨论】:
标签: javascript react-router history.js html5-history