众所周知React只负责UI的展示,但是数据控制和数据模式也是逃脱不掉的,总是需要自己去实现,总得来说也就那三种方式,在以前的文章中有介绍,但我个人认为还是Redux来的高级点,至少可以采用一个全新的JS实现方式,也值得我们去尝试,Redux采用的是单一数据源,在数据展示时,存在各种不同的展示需求,必然会有不同数据在同一页面展示,不同页面展示同一数据的情况,那么在数据的更新时,也就必然存在不一致,不同步的情况,如何构建一个扁平化的数据结构来适应这种需求呢?weixin公众号:(React实战)
在实际项目开发中,我们往往的经历是:随意性开发->重构->规范化设计,但是理想往往屈服于现实,重构和重新设计的成本总是巨大的,所以每个软件项目都是一个遗憾的缺陷品。解决这种状况的最好办法是采用成熟的设计方法和设计模式。
在初识Redux时,我是连它这种方式都不认可的,采用单一的数据源,想想就疯狂,在开发过程中,我们知道会涉及太多的需要展示的数据,压根不会想这种方式,但别人就这么干了,目前看还有大批的拥护者,当然以老外居多。既然采用单一数据源,开篇的问题也就来了,如何构建满足Redux的数据源?一般来说可以采用两种方式:一种是独立数据模型,一种是共享数据模型。
1.独立数据模型
所谓独立数据模型就是我们每个组件内的数据独立维护,例如人员列表组件包括人员列表、人员数据统计等,其所对应的数据模型独立的占据着Red