在我的React / Redux应用程序中,我有一个需要从服务器获取内容的组件,因此,我将简单的axios调用编写为redux thunk动作。
但是,该动作本身不会派发任何东西;获取的信息仅在组件中使用。因此,实际上并不需要执行redux操作。对吧?
很可能我在熟悉React之后不久就跳入了Redux的学习,我...除了在Redux动作中,我不知道您应该在哪里“放置”异步函数。
我只是在Component的实例方法中进行axios调用吗?最佳做法是什么?
答案 0 :(得分:1)
是的,您可以在组件中发出请求。由于您可能想根据响应重新呈现某些内容,因此您将需要在类组件中使用setState或在功能组件中使用useState。建议尽管在组件和http客户端(axios)之间有一个抽象层。例如,某种服务模块,它返回axios承诺。在组件中,您可以等待响应,也可以在promise上放置.then处理程序,然后设置组件状态。