Flux/utils: 如何在calculateState方法中获取props?

Flux/utils: How to access to props in the calculateState method?

container 组件中,如何从基于 this.propscalculateState 静态方法中的存储中获取状态?

容器无法访问道具默认情况下容器无法访问任何道具。这既是出于性能原因,也是为了确保容器可重用,并且 props 不必在组件树中穿插。在某些有效情况下,您需要根据道具和商店的状态来确定您的状态。在这些情况下 将选项 {withProps: true} 作为第二个参数传递给 create()。这会将组件道具公开为 calculateState() 的第二个参数。

  class CounterContainer extends Component {

       static calculateState(prevState,props) {
         return {
           counter: CounterStore.getState(props.id),
        };
      }

        render() {
           return <CounterUI counter={this.state.counter} />;
        }
  }

const container = Container.create(CounterContainer, {withProps:true});