Redux是Sessions,Cookies的替代品,还是一个持久的数据库?

时间:2017-11-02 16:15:51

标签: node.js reactjs redux sysdatabases

我想知道redux是否有自己的数据库,还是需要MongoDB,MySQL或其他数据库?

它是会话,cookie,internalStorage,LocalStorage和IndexedDB的替代?

redux是在反应组件之间传递状态/数据的最佳方法吗?

感谢。

2 个答案:

答案 0 :(得分:2)

Redux用于客户端状态,默认情况下它只在内存中,但没有什么能阻止你将它持久化到localStorage,sessionStorage或indexedDB。它不是数据库数据的1:1映射,或者至少不是大多数人使用它的方式。您的视图是分派操作然后更新存储状态,以便其他视图可以对这些数据更改做出反应。

人们将它与后端结合使用,例如,您的操作可以是通过API获取数据或将数据放入数据库的功能,您可以通过调度成功或失败的操作将结果存储在商店中。 / p>

答案 1 :(得分:1)

Redux是一个内存存储,可以跟踪整个应用程序中各个位置的数据,并帮助您将数据路由到需要的位置。它不涉及传统的持久性数据库。实际上,使用数据库来保持Redux状态是非常不寻常的,因为通常存储在Redux中的数据类型通常与特定用户和特定会话相关。也就是说,“用户点击了按钮A”。大多数应用程序只需要记住,当用户登录并仍然在给定页面上时。

也就是说,如果您希望永久维护应用程序的状态,则无法将Redux状态保存在数据库中。我认为大多数用户体验设计师都认为这是不必要的,甚至可能会让人感到困惑,这取决于应用程序的复杂程度,应用程序的浏览量以及用户上次登录后的持续时间。