React / Axios发送无限数量的请求

时间:2019-12-12 09:05:43

标签: javascript reactjs get axios

组件安装时,我正在从后端api获取数据,并且可以成功完成此操作,但是我的React应用程序不断向服务器发送请求,导致其速度变慢。我使用过useEffect挂钩,但是不使用挂钩就得到了相同的结果。

intersection.columns
Index(['Composite Element REF_x', 'Beta_value_x', 'Chromosome_x', 'Start',
       'End_x', 'Gene_Symbol', 'Gene_Type_x', 'Transcript_ID_x',
       'Position_to_TSS_x', 'CGI_Coordinate_x', 'Feature_Type_x',
       'Composite Element REF_y', 'Beta_value_y', 'Chromosome_y', 'End_y',
       'Gene_Type_y', 'Transcript_ID_y', 'Position_to_TSS_y',
       'CGI_Coordinate_y', 'Feature_Type_y'],
      dtype='object')

我在做什么错了?

1 个答案:

答案 0 :(得分:3)

如果您对useEffect钩子没有任何依赖关系,它将在每次您的组件渲染时执行(这将无限期发生,因为您在获取数据后设置了状态,因此您的组件会重新渲染)。

docs中查看useEffect的第二个参数以了解更多信息。

一个空的依赖项数组表示useEffect将充当装载,并且仅执行一次。

useEffect(() => {
    // Do mount stuff here such as executing your request.
}, []);