React更改数据--setState

setState()

  • 更新数据

    • setState() 更新数据是异步更新

    • 在刚使用完 setState() 进行数据更新完后,不能直接拿到最新的值。

    • 可以调用多个 setState() ,但是最后只会执行一次 render() --- 只会触发一次页面重新渲染

  • 推荐写法:

    • this.setState((state,props) => {}, callback) ---- state:最新的state 、 props:最新的props

    • 这种写法,连续调用多个 setState() 方法时,就可以获取到最新的值来操作

mouse = () => {
    this.setState((state, props) => {
        return (
            count : state.count + 1
        )
    })
}
  • 后面的回调函数:

    • 使用:在状态更新完毕后,立即执行某个操作
    mouse = () => {
        this.setState((state, props) => {
            return (
                count : state.count + 1
            )
        },
        () => {
            console.log('状态更新完毕')
            }
        )
    }

你可能感兴趣的:(学习,react.js,javascript,前端,state)