【问题标题】:Route wait for async data before redirect重定向前路由等待异步数据
【发布时间】:2018-03-24 18:57:16
【问题描述】:

我来自 Angular 世界,在那里解析路由数据非常简单,而且开箱即用。如何在 react 中执行相同的操作?

为路由添加异步数据加载器,以便在数据准备好后重定向?我正在使用 react-router。

我在某处看到可以使用Router.run() 方法编写自己的回调,但在官方文档中找不到。

我不想使用componentWillMount,因为有时数据会在几秒钟内加载并且页面会闪烁。

我知道这个话题出现了很多次,但我找不到一个饱和的答案。我将非常乐意为您提供解决方案的帮助。

【问题讨论】:

    标签: javascript reactjs react-router


    【解决方案1】:

    在我看来,在重定向之前等待数据可能会导致糟糕的用户体验,因为用户需要等待一些东西,而他可能不明白应用程序实际上是在后台做某事。

    最好先渲染 UI,然后将实际数据传送到页面。

    我通常使用 componentDidMount 来处理这些事情。

    例如:

    • 组件在没有数据的情况下呈现
    • componentDidMount 中获取数据
    • 然后通过设置状态更新 UI

    根据组件的具体外观,也可以显示加载图标。

    【讨论】:

    • 也许你是对的,我部分同意你的观点。但是重定向前等待数据怎么办,有什么解决办法吗?
    • 虽然您可能认为您提供了更好的用户体验,但请按要求回答问题。用户体验讨论请转至ux.stackexchange.com
    猜你喜欢
    • 1970-01-01
    • 2018-01-10
    • 2018-07-09
    • 2014-07-14
    • 1970-01-01
    • 1970-01-01
    • 2020-05-30
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多