我做了一个简单的应用程序,它从一个模拟API中获取数据,并将其显示在UI上。
我得到的数据是这样的:
export const getPlayerData = async (): Promise<IPlayerProps[]> => {
const response = await axios.get(
`https://6360055fca0fe3c21aaacc04.mockapi.io/player`
);
return response.data;
}
并将其传递给父组件,如下所示:
const { data, status }: UseQueryResult<IPlayerProps[], Error> = useQuery<
IPlayerProps[],
Error,
IPlayerProps[]
>('players', getPlayerData);
所以我接下来要做的就是Map对象数组并显示数据。
我的问题是,一位雇主要求我使用Redux,并在父组件和子组件之间共享数据,例如,我是否可以使用Redux存储对象数组,并在另一个页面中使用它?
任何帮助都将不胜感激!:)
1条答案
按热度按时间wribegjk1#
使用redux,您可以创建一个reducer,它将定义哪些数据应该存储在state上。当调度各种操作时,可以根据您希望在每个操作创建者调用中更改的内容,将不同的数据存储在state上。当您调度一个操作来获取数据时,您还可以有一个“成功”状态操作,它可用于使reducer知道用新数据更新状态。然后,您可以使用选择器从任何子组件的状态中获取数据。如果您将存储区 Package 在整个应用程序中,则几乎可以在任何地方使用它。
Skip to section on "state, actions, and reducers"
您可以使用react-redux中的“useDispatch()”在获取数据后调度成功的操作。
你需要使用base redux来建立一个商店和所有的东西。我建议在最顶层创建商店
对于现代切片方法,请查看此处scroll to create slice