是否可以通过redux存储在同级组件之间共享承诺?

时间:2018-06-29 09:37:36

标签: redux react-redux

我有两个组件,DeleteCards和ConfirmModal。 DeleteCards组件显示可以删除的卡。

当用户单击deleteCard时,动作将更新状态,如下所示:

{ showModal : true, title : 'Delete card', body : 'Are you sure?'}

因此,这现在导致我的模态窗口出现,要求用户进行确认。问题是我现在需要我的deleteCard函数来等待并听取模态内部的确认单击。

我可以从技术上做到这一点:

{ showModal : true, title : 'Delete card', body : 'Are you sure?', promise: promiseRef }

但是,我知道这是一种反模式。那么,我在这里有什么选择?或实现此目标的redux方法是什么?

1 个答案:

答案 0 :(得分:-1)

从技术上讲,这不是与Redux相关的问题,您可以将一个函数作为道具传递: <ConfirmModal onConfirm={this.onModalConfirm}/>

或者,如果您100%决定使用Redux,只需标记一个modalConfirmed,然后将其添加到mapStateToProps,然后在您的componentDidUpdate中检查该道具,然后控制所需的功能。