【问题标题】:React Router and Redux, re-enabling a `loading` flagReact Router 和 Redux,重新启用 `loading` 标志
【发布时间】:2020-11-24 03:23:24
【问题描述】:

由于涉及大量代码,我将抽象地描述我的设置:

  • 我有 react、redux 和 react-router,如 redux docs 中所述。
  • 我有一个动态路由(例如/users/:id)。使用 redux,我有一个调用服务器并返回用户信息以进行渲染的操作。
  • 默认情况下,redux store 有loading: true,在反应中我使用loading ? <Spinner /> : <User />
  • 调用服务器的 redux 操作分派 info 和 loading: false,以便 <User /> 仅在对服务器的调用完成后呈现。

我认为这很正常,但是我有以下问题:如果我想从/users/1跳转到/users/2怎么办?商店仍然有loading: false,因为/users/1 加载正常,我应该怎么做才能让我的应用知道我不应该渲染/users/2

【问题讨论】:

    标签: javascript reactjs redux react-redux


    【解决方案1】:

    我的建议是查看路由组件的componentDidUpdate 中的id 更改,如果更改,则调度一个redux 事件,该事件会将加载状态更改为true,并在需要时开始加载该用户。

    【讨论】:

      猜你喜欢
      • 2017-10-04
      • 1970-01-01
      • 2018-02-25
      • 2018-10-28
      • 1970-01-01
      • 2018-07-16
      • 2021-01-05
      • 2017-08-28
      • 2020-05-29
      相关资源
      最近更新 更多