我开发了一个组件。在其中,我正在加载基于传递给它的Id的数据;
我的项目组件代码看起来像
ItemStore.CallItem("TenantId",this.props.MetaItemId);
我的调用页面代码看起来像
<div className="box-body table-responsive no-padding list-relations" id="configureMM">
<Item MetaItemId={11} />
</div>
<div className="box-body table-responsive no-padding list-relations" id="configureMM">
<Item MetaItemId={12} />
</div>
但是它会占用第一个id的时间因为this.props包含第一个MetaItemId但理想情况下我应该在我调用<Item MetaItemId={12} />
时重新初始化但是它不是,可以任何人请让我知道是什么我在这里失踪了?
答案 0 :(得分:1)
如果isMoreOrdered(numbers, new_path, old_path)
,您需要将ItemStore.CallItem("TenantId",this.props.MetaItemId);
放入componentWillReceiveProps
,以便它看起来像这样
nextProps.MetaItemId !== this.props.MetaItemId
这将执行调用,但除非您在某处设置状态,否则您的组件不会更新,这取决于ItemStore.CallItem的功能。