redux 状态数据会自动清理么?

redux store集中管理页面状态数据,如果多个页面路由切换时不进行数据清理操作,会不会造成内存问题,redux是否可以将不同页面组件请求的数据一…
关注者
20
被浏览
17,791

13 个回答

  1. 只要你往store注册了state默认是不会自动清理的。redux store是通过闭包方式存在内存中,默认不清理,除非你应用卸载了(这里不考虑持久化存储问题)。
  2. 至于内存泄露问题,前面说了store是放在内存中,自然可能会有这方面风险,但是这样场景还是比较少的。
  3. 至于你说的所有请求放在store里面有没有问题,这就涉及到另外一个问题 前端应用数据流如何设计。

内存问题有很多中,一种是占用过大,一种是内存泄漏,你看你指的是哪种,对于 redux 来讲,通常情况下,不合理的 state 结构会导致内存占用过大,而内存泄漏和其没有直接关联性。

将不同页面组件请求的数据一起保存到全局

这样操作没什么大问题,无非就是会额外消耗内存,所以需要在数据流的设计上,好好思考,是否真的有必要把这些数据托管到 store 中