美文网首页
Lesson10组件的state和setState

Lesson10组件的state和setState

作者: 易路先登 | 来源:发表于2019-07-26 17:42 被阅读0次
    1. state 用来存储组件内的状态
    constructor () {
        super()
        this.state = { isLiked: false }
    }
    
    1. setState用来修改state状态
      直接通过this.state.xxx = xxx来修改state状态的话,react无法感知状态改变,所以不会更新组件
      (1).. setState()函数接收对象参数
     this.setState({
          isLiked: true
     })
    

    (2).. setState()函数接收函数参数

    this.setState((prevState) => {
          return { isLiked: true }
    })
    

    如果多次调用setState, React.js 内部会把 JavaScript 事件循环中的消息队列的同一个消息中的 setState 都进行合并以后再重新渲染组件。
    因为这个,得出两点需要注意的事项:

    • 不用担心多次setState会影响性能
    • 如果当前setState需要依赖上次setState的状态,那么最好使用函数参数进行setState,因为这个函数参数可以接受一个参数就是当修改前的state里面的状态信息。

    相关文章

      网友评论

          本文标题:Lesson10组件的state和setState

          本文链接:https://www.haomeiwen.com/subject/pebdrctx.html