解耦React中的不同行为以获取列表

时间:2019-07-10 20:51:01

标签: reactjs

我有一个应用程序,显示用户可以与之交互的Integrations列表。用户可以使用一个按钮来Connect用其帐户IntegrationConnect操作会弹出一个模式,允许他们输入信息,单击Submit,这会发送网络请求,并在完成后,UI将Integration显示为Connected 。这很容易。

我要添加另一个Integration,除了这次按钮不应该显示模式,而应该立即发出网络请求。

我正在努力寻找正确分离这些案件的正确方法。

我可以使用var callback = integration.name === NewOne ? newCallback : oldCallback;。回调必须从最顶层的组件传递,因此我可以将两者都传递下去,然后Integration组件可以决定用哪个呈现按钮?

另一个问题是,当用户单击Connect时,它将修改最顶部组件的状态并设置一个inProgressIntegration变量。如果此变量是nullundefined,则不显示模式,否则显示。即使正在进行网络请求,此状态也很有意义,但是我不希望显示模式,因此shouldShowModal(...)的逻辑类似于(inProgressIntegration && inProgressIntegration.name != NewOne)

对别人的想法感兴趣。

谢谢!

0 个答案:

没有答案