整体思路
首先不管是Vue还是React,都是组件话的思想来完成这一个TodoList,因此我们需要把整个的TodoList进行一个拆分,拆分成不同的组件,看这个应用的整体结构可以很轻易的将它拆分为四个组件。首先是最外层的壳,包裹着所有的子组件的App根组件,接着就是三个字组件,我将他们分别命名为Header,List,Footer,List里的每一个任务也都是一个组件。
React的做法
思路出来了,那自然就一个一个组件的来,首先是Header组件,在Header组件中加入的任务需要在List的组件中显示(本例中没有使用PubSubJS这个库,该库可以让任意两个组件实现通信不局限于父子组件,但是我觉得作为初学者,通过层层的传递可以更加的了解react中父子组件之间的通信),因此需要通过他们共同的父组件来传递数据。所以需要先将加入的列表的任务的信息传递给父组件,然后再通过父组件将信息传递给他的兄弟组件List。