Lesson10组件的state和setState

  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里面的状态信息。
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

友情链接更多精彩内容