React - setState() 不更新叶级属性

React - setState() Does not update leaf level attributes

我正在使用 React 和 Basic Flux 来做一个数据输入网络应用程序。 所以我有一个与商店通信的根组件,获取类似于 this 的复杂数据对象。

在更改选项 select 元素时,我触发了一个操作,该操作会带来另一个具有与上述结构类似的相关对象。

我将这个庞大的对象作为我的数据输入页面的根状态进行管理,并将数据作为道具传递给各个组件。

此对象的叶级别,我已将其绑定到输入元素。所以它随着对象的改变而改变。所有这些变化都从根组件的以下状态变化中滴落下来。

 MeasurementStore.getAllMeasurements().then((measurements) => {  
        this.setState({
            measurements : measurements
        });
    });

但在我的例子中,叶级别的值不会随着状态的变化而变化。但是当我添加以下内容时

 MeasurementStore.getAllMeasurements().then((measurements) => {  
        this.setState({
            measurements : {}
        });
        this.setState({
            measurements : measurements
        });
    });

它开始正常工作,叶级值相应改变。为什么会这样?

想通了。 我在我编写的可重用 "custom" 输入中维护状态,因此更改没有按预期进行,因为子元素基于它自己的状态。

删除状态及其 "props" 一直到最后!

吸取教训!总是努力提升你的状态!