优秀的编程知识分享平台

网站首页 > 技术文章 正文

前端开发react框架 - setState(react前端项目)

nanyue 2024-08-05 19:52:12 技术文章 9 ℃

setState更新原理:

  • setState 是异步更新数据
  • setState多次调用, 不依赖前面setState(console.log() 值是一样)
  • 多次调用,只会触发一次重新渲染

推荐语法:

setState((state,props)=>{

return{

num:state.num+1

}

})

参数state,表示最新的state

参数props,表示最新的props

setState第二个参数:

setState((state,props)=>{

return{

num:state.num+1

}

},()=>{

console.log('状态更新后,页面渲染完成,立即执行回调')

})

组件更新机制:

  1. setState两个作用:1.修改state 2.更新组件UI
  2. 过程:父组件重新渲染时,也会重新渲染子组件,但是只会渲染当前组件的子树

减轻state:

  1. 只存储跟组件渲染相关的数据
  2. 不用做渲染的数据不用放在state中
  3. 多个方法中用都得数据,放在this中

避免没必要的重新渲染:

  1. 使用钩子函数 shouldComponentUpdate(nextProps,nextState)
  2. 渲染时机 shouldComponentUpdate > render

纯组件:

setState 对象类型修改方法:

虚拟 dom 和 diff 算法:

虚拟 dom 本质上就是js对象,用来描述你希望在屏幕上看到的内容

最近发表
标签列表