Javascript对象析构函数在react this.props中不起作用

Javascript对象析构函数在react this.props中不起作用,javascript,reactjs,Javascript,Reactjs,几天前,我刚刚学习了使用简单对象进行对象析构函数,效果很好。然而,当我尝试在react on this.props中使用它时,它会为我的所有变量返回未定义的值,我不确定我在这里做错了什么。非常感谢您的帮助。干杯 render() { console.log("the properties from props", this.props.currentTeam); const { metaDataUpdated, metaDataUpdating,

几天前,我刚刚学习了使用简单对象进行对象析构函数,效果很好。然而,当我尝试在react on this.props中使用它时,它会为我的所有变量返回未定义的值,我不确定我在这里做错了什么。非常感谢您的帮助。干杯

render() {
    console.log("the properties from props", this.props.currentTeam);
    const {
        metaDataUpdated,
        metaDataUpdating,
        needsToResetUpdateMessage
    } = this.props.currentTeam;
    console.log(
        `metadata updated? ${metaDataUpdated}   --- is metaDataUpdating? ${metaDataUpdating} --- need to update message ${needsToResetUpdateMessage}`
    );

您的
console.log
语句正在查看两种不同的内容,而
console.log
在显示特定时间点的内容时不可靠。如果要调试类似的内容,请尝试使用以下方法:

console.log(JSON.stringify(this.props.currentTeam)));
console.log(JSON.stringify(metaDataUpdated));

然后,您可能会看到这些值是一致的,您的问题很可能与React生命周期或更新道具或状态的方式有关。

当您使用
console.log(this.props.currentTeam.MetadataUpdate)
时会得到什么?我这样问是因为当输出
this.props.currentTeam
时,可能是控制台的延迟加载效应。好问题。这也给出了未定义的结果,所以我想通过redux更新我的商店的某个地方效果不好。谢谢你给我指出了正确的方向。@trincot:发现了问题,我忘了在减速器中以不变的方式复制我的状态。(Y) 很高兴听到你把它解决了!