,你可以把组件看成一个'状态机",它是能够随着时间变化的数据,更多的是应当在实现交互时使用,根据状态state的改变呈现不同的UI展示
在React中,因为不能直接修改外部组件传入的prop值
当需要记录组件自身数据变化时...this.setState方法来触发实现的
下面我们从一个简单的点击按钮,显示和隐藏的效果开始: 效果如下所示:
连续点击按钮,上方的itclanCoder文本在显示和隐藏进行切换,当状态为true时,...初始化该组件当前状态的state值必须是一个javascript对象,不能是string,或者number,boolean等简单的基本数据类型
即使你想要存储一个只是数字类型的数据,也只能把它存作state...对象下的某个字段对应的值中,这个state可以看做是组件自身提供的一个固定的对象,用于存储当前组件自身的状态,它是私有的对象,并且完全只受控于当前组件
在以上代码中,通过给button按钮监听绑定onClick...,对于在React中的JSX绑定的事件处理函数中调用setState方法是异步的就可以了
如果你需要基于当前的state来计算出新的值,那么setState函数就应该传递一个函数,而不是一个对象,它可以确保每次调用的都是使用最新的