react native中this.setState({xxx:''})与this.state.xxx='' 有区别吗?

本文探讨了在React Native中,使用`this.setState({xxx: ''})`与`this.state.xxx = ''`的区别。主要差异在于`this.setState`用于修改state并触发界面重新渲染,而直接赋值不会触发渲染且可能造成状态同步问题。在需要更新状态并刷新UI的场景下,应当使用`this.setState`。
摘要由CSDN通过智能技术生成

react native中

this.setState({xxx:’’})与this.state.xxx=’’ 有区别吗?

答案: 有的

this.state通常是用来初始化state的,this.setstate是用来修改state值的。如果你初始化了state之后再使用this.state,之前的state会被覆盖掉,如果使用this.setState,只会替换掉相应的state值

this.setState({})

this.setState({})会触发render方法,重新渲染界面。而this.state.xxx=’’ 不会重新加载UI。

this.setState({})是异步的


this.state.xxx='' 
在什么场景会使用this.state.xxx呢?

我在写了两个button,点击button更新改变state的值,然后将state作为参数请求数据,自动刷新列表UI的时候,出现了问题。

具体代码是这样的

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值