【发布时间】:2020-12-23 07:45:22
【问题描述】:
我正在使用 react-router-dom 进行开发。现在,我正在创建一个用户可以在表单中输入信息的页面。我想要做的是防止用户在不小心返回上一页时丢失他们输入的信息。
我首先在下面的文章中找到了一种停止浏览器的方法。好像在你回到上一页的那一刻,你马上又回到了原来的页面,有效地阻止了你回到上一页。
React.useEffect (() => {
return () => {
props.history.goForward ();
}
}, []);
React Router Dom v4 handle browser back button
但是,在这种情况下,之前的页面会被返回一次,所以当前页面的所有信息(状态)都会被重置。是否有防止状态重置的解决方案? 还是有更聪明的方法来解决这个问题?
下面,我准备了一张图片来说明。
【问题讨论】:
-
使用像 redux 这样的全球商店管理系统将解决您的问题,请参阅此处react-redux.js.org/introduction/quick-start
-
使用 redux 并将你的值存储在那里
标签: javascript reactjs react-router-dom