Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/haskell/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何在登录后根据用户刷新数据而不重新加载页面?_Javascript_Reactjs_Redux_React Redux - Fatal编程技术网

Javascript 如何在登录后根据用户刷新数据而不重新加载页面?

Javascript 如何在登录后根据用户刷新数据而不重新加载页面?,javascript,reactjs,redux,react-redux,Javascript,Reactjs,Redux,React Redux,我有一个react和redux应用程序,用户需要登录才能创建帖子。但是,如果他忘记登录并开始写文章,然后按“创建”按钮,他会看到一个登录模式。现在,我不想让他在登录后重新加载页面而丢失他写的东西,但我需要根据登录的用户刷新应用程序的数据。 那么,在这种情况下,最好的方法是什么呢?最简单的解决方案是,除非用户登录,否则不允许用户键入帖子。在post输入通常是“登录以创建post”之类的内容 如果您仍然需要问题的解决方案,那么您可以使用。因此,如果登录成功,则在重新加载页面之前,将他们键入的内容保存

我有一个react和redux应用程序,用户需要登录才能创建帖子。但是,如果他忘记登录并开始写文章,然后按“创建”按钮,他会看到一个登录模式。现在,我不想让他在登录后重新加载页面而丢失他写的东西,但我需要根据登录的用户刷新应用程序的数据。
那么,在这种情况下,最好的方法是什么呢?

最简单的解决方案是,除非用户登录,否则不允许用户键入帖子。在post输入通常是“登录以创建post”之类的内容


如果您仍然需要问题的解决方案,那么您可以使用。因此,如果登录成功,则在重新加载页面之前,将他们键入的内容保存到
localStorage
。在React组件中,在装载逻辑期间,您可以检查保存它的相应属性名中的
localStorage
中是否有任何内容。如果不是,只渲染空输入。如果那里保存了帖子,请将他们键入的内容加载到输入中,然后清除
localStorage
。现在他们登录了,页面被刷新,他们的帖子内容被重新加载到输入中。

最简单的解决方案是,除非人们登录,否则不要让他们键入帖子。在post输入通常是“登录以创建post”之类的内容


如果您仍然需要问题的解决方案,那么您可以使用。因此,如果登录成功,则在重新加载页面之前,将他们键入的内容保存到
localStorage
。在React组件中,在装载逻辑期间,您可以检查保存它的相应属性名中的
localStorage
中是否有任何内容。如果不是,只渲染空输入。如果那里保存了帖子,请将他们键入的内容加载到输入中,然后清除
localStorage
。现在他们已登录,页面已刷新,他们的帖子内容已重新加载到输入中。

您可以创建一个操作/缩减器,将消息存储到redux中

如果用户未登录并按下创建post的按钮,则可以发送一个操作,将表单条目保留在存储中,并在用户登录并键入表单后使用选择器检索表单条目


另一个很好的替代方法是使用
窗口。localStorage

您可以创建一个操作/缩减器,将消息存储到redux中

如果用户未登录并按下创建post的按钮,则可以发送一个操作,将表单条目保留在存储中,并在用户登录并键入表单后使用选择器检索表单条目

另一个好的选择是使用
Window.localStorage