首页 > 解决方案 > 除非 API 数据已更改,否则使用 Redux 避免再次拉取数据

问题描述

我正在开发一个 React Native 应用程序,我使用 Redux 从 API 中提取数据。现在,我只想在 API 数据更改时重新渲染组件。如果 API 数据与之前相同,则不应更改。我如何使用 Redux 实现这一目标?

标签: react-nativeredux

解决方案


我已经使用useSelector钩子成功地做到了这一点:

https://react-redux.js.org/api/hooks#useselector

使用 API 中的数据更新您的 redux 存储。每当您的 redux 存储中的数据发生更改时,该钩子都会触发,从而允许在您的 redux 存储更改时重新渲染任何组件。

import { useSelector } from 'react-redux';

const MyComponent = () => {
  const apiData = useSelector(state => state.apiDataLocation);

  /*This will update to display the api data whenever the 
  store is updated.*/ 
  return (
    <View>
      <Text>{apiData}</Text>
    </View>
  );
};


推荐阅读