Taro 修改对象中某个属性的值,正确的做法是这样

我是Taro框架。不是原生小程序

1.第一种方法:

this.setState((preState)=>{

preState.current=e.detail.value;

}, () => {)

      console.log(this.state.current);

    }

2.第二种方法,(实际使用中,发现过不好使的情况!!在setstate之前,明明传的是true,等到setstate之后,发现值还是false,不能理解中间是出了什么问题)

let  data=Object.assign({},this.state.orderInfo,{payMethod:value})

console.log("data debugger",data)

this.setState({

orderInfo:data

})

3.第三种方法:

let data={

...this.state.data,

name:'zhangyunlei'

}

this.setState({

data:data

})

4.顺便多提一句,我试过下面这些方法,都不对。如果谁知道,怎么改造下面这种写法,请不要吝啬,给我留言分享一下吧,感激不尽!(我是Taro框架。不是原生小程序)

this.setState({

obj.name:data,

obj[name]:data,

[obj[name]]:data,

[obj.name]:data,

[obj['name']]:data,

[obj['+name+']]:data,

['obj['+name+']']:data,

})

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容