在数据为王的网络世界中,数据永远都是页面的核心,那么对于数据管理的模式,react采用的是单向数据流模式,单向也就是数据只能从一个方向流向另外一个方向而不能反过来,如果把dom想象成一颗树,单向数据流就是将数据自上向下的流动,为了让数据流到尽可能多的dom中,肯定要把数据尽可能放的高一点。这里的数据可以简单理解为state,而对于流到下面的数据,dom通过props接收。这样模式就很显而易见了,尽可能高的组件对state进行更新,子组件的props也会随即更新,数据单向流动,这时候如果想通过子组件来反向更新state,就要通过上层组件传递一个函数,在函数中通过setState等方法来达到反向数据的更新。其实到这已经可以应付一些简单的应用了,但是对于复杂的应用,组件之间的数据通信有可能是交叉而又错综复杂的,这时候就希望通过一种统一的方式将数据好好管理起来,那么出现了redux。