【发布时间】:2016-11-24 21:51:57
【问题描述】:
Redux 状态保存未保存更改的标志,如果设置了此标志,我想在导航(单击链接)时提示用户。我正在使用react-router-component。我没有在文档中找到如何做到这一点。
【问题讨论】:
标签: javascript html reactjs redux react-router-component
Redux 状态保存未保存更改的标志,如果设置了此标志,我想在导航(单击链接)时提示用户。我正在使用react-router-component。我没有在文档中找到如何做到这一点。
【问题讨论】:
标签: javascript html reactjs redux react-router-component
任何在 2018 年看到这篇文章并使用 react 路由器 4+ 的人,我建议阅读这个reacttraining example
TL;DR 在顶部使用Prompt 组件
<Prompt
when={hasUnsavedChanges}
message="There are unsaved changes, do you wish to discard them?"
/>
【讨论】:
您应该能够简单地创建自己的 Link 组件(继承自 Router.NavigatableMixin,例如此处为 https://github.com/STRML/react-router-component/issues/105#issuecomment-63874805 和此处为 http://strml.viewdocs.io/react-router-component/recipes/custom-link/)。
然后,您只需处理该组件上的点击事件,提示用户是否要导航,如果“是”,您只需继续使用 this.navigate(...)(从您的组件内部,继承自 Navigatable)。
【讨论】: