路线变更数据消失,如何持久化数据

问题描述 投票:0回答:2

在我的应用程序中,我从后端列出

pokemon
。在
pokemon-list
组件中列出的口袋妖怪之后,单击任何口袋妖怪,我试图显示相同的详细信息。

但是点击

view details
按钮后整个数据突然消失。我无法理解实现 Redux 存储的正确方法。实施同样的正确方法是什么?

我要求:

  1. 页面加载时,所有
    pokemons
    需要在列表组件中列出
  2. 单击查看详细信息即可显示个人
    pokemon
  3. 再次点击查看列表时,需要像页面加载一样显示
    pokemons
    ,无需任何后端调用。

我是 Redux 和 React 新手。

现场演示

reactjs react-redux react-hooks react-typescript
2个回答
0
投票

有一种东西叫做 redux-persist

https://www.npmjs.com/package/redux-persist

尝试一下,它将帮助您存储您想要的任何内容


0
投票

我伪造了用reducer来传递属性的重置。当请求查看详细信息时,用户列表丢失了,因为我没有通过之前的状态。它对我有用:

const pokemonReducer = (state = initialState, action: PokemonDispatchTypes) => {
  switch (action.type) {
    case POKEMON_FAIL:
      return { loading: false };
    case POKEMON_LOADING:
      return { loading: true };
    case POKERMON_SUCCESS:
      return { loading: false, pokemons: action.payload };
    case POKEMON_DETAILS:
      return { ...state, loading: false, showPokemon: action.payload };//mistake is here
    default:
      break;
  }
  return state;
};
© www.soinside.com 2019 - 2024. All rights reserved.