,你可以把组件看成一个'状态机",它是能够随着时间变化的数据,更多的是应当在实现交互时使用,根据状态state的改变呈现不同的UI展示
在React中,因为不能直接修改外部组件传入的prop值
当需要记录组件自身数据变化时...还是state都是组件的数据,影响组件最终的UI展示,究竟怎么样进行区分,哪个组件应该拥有某个state状态,进行设置,有时候,它们是非常模糊的概念
但是在React中应该遵循一些原则:
让组件尽可能的少状态...,只有输入和输出,无状态,无生命周期钩子函数,只是用作于接收父组件传来的props值渲染生成DOM结构,无交互,无逻辑层的数据展示
无状态(函数式)组件,在性能上是最高效的,开销很低,因为没有那些生命周期函数嘛...共同点:
都是组件内的数据,是一普通的javascript对象,都是用来保存信息的,这些信息可以控制组件的形态
不同点:
props是由父组件传入的(类似形参),用于定义外部组件的接口,是React组件的输入...,如果想要修改某些值,用来响应用户的输入或者输出响应,可以借用React内提供的setState函数进行触发,并用state来作为替代
state是当前组件的内部状态,它的作用范围只局限于当前组件,它是当前组件的一个私有变量