Javascript 如何在单击时显示当前状态

Javascript 如何在单击时显示当前状态,javascript,reactjs,Javascript,Reactjs,如何显示当前更新状态 我用onClick函数{this.toggleCollapsei,info}}>来切换卡片。 但我有一个问题,因为它是第二次点击打开。 第一次单击我的状态显示卡时:[]为空 我想更新此阵列的状态 {标题:第3篇,描述:非乌尔纳、多尼克和安特、法塞卢斯和法古拉……多洛在阿利奎特·拉奥里特、毛里斯·图尔皮斯·波尔蒂托,开放:非活动}描述:多尼克和安特。叶舌。前庭位于阿梅特普鲁斯。Vivamus hendrerit,aliquet laoreet的dolor,mauris tu

如何显示当前更新状态

我用onClick函数{this.toggleCollapsei,info}}>来切换卡片。 但我有一个问题,因为它是第二次点击打开。 第一次单击我的状态显示卡时:[]为空

我想更新此阵列的状态


{标题:第3篇,描述:非乌尔纳、多尼克和安特、法塞卢斯和法古拉……多洛在阿利奎特·拉奥里特、毛里斯·图尔皮斯·波尔蒂托,开放:非活动}描述:多尼克和安特。叶舌。前庭位于阿梅特普鲁斯。Vivamus hendrerit,aliquet laoreet的dolor,mauris turpis porttitoopen:inactivetitle:title3_uuuproto_uuuu:Object iiiii 6首先要理解的是设置状态是异步的。这意味着组件的状态不会在调用setState后立即更新

但是setState接受一个回调函数,您可以在其中放置需要更新状态的代码

this.setState({ ... }, () => {
    // my state is updated here !
});
正如所指出的,不使用setState更新状态不是正确的方法

this.state.showCards['open'] = 'active'
应该是

this.setState({
    showCards: {
        open: 'active',
        ...this.state.showCards
    }
});

不建议使用this.state.showCards['open']='inactive'来改变状态。您应该始终使用setState,因为它会导致组件重新渲染。您能告诉我怎么做吗。我试过不同的方法,但没有…谢谢!但是,我有一个问题,我无法再次看到更新状态。请检查我的帖子,你已经编辑了。用这个代码这个.setState{showCards:{open:'active',…这个.state.showCards};我将失去showCards状态,我将只拥有{open:'active},对吗?@boriscivci No........this.state.showCards部分负责将showCards的其他属性保持在新状态。