欢迎访问我的博客,目前从事Machine Learning,欢迎交流

ant design pro解决初始加载,有顺序的请求/请求顺序报错问题/登录后再加载其他数据/异步的顺序问题/偷跑

方法是:如在Authorized.jsx中解决,当未登录成功(包括登录失败和登录验证中),就显示loading,否则继续 加载渲染children

一个三目运算或者if分支就可以解决,但是要写到最先加载的路由页面中,这样一开始加载页面时,才能拦住其他的组件的加载,例如:我的项目一开始就加载鉴权组件Authorized,那么

 

Authorized.jsx

render() {
    
   if (loading ||  loginCode === 100) {
      return <PageLoading />;
    }

    if (loginCode === 400) {
      return <Redirect to={`/login`}></Redirect>;
    }

    return children;
}

 

 loginCode 是我根据后台返回的数据,做的判断,当后台未返回时,loginCode 赋值 100,登录失败时,loginCode 赋值 400 ,登录成功,loginCode 赋值 200即可,此时把用户数据存在redux中,其他页面加载时,都可以用得到,这样,我就有效避免由于网络问题,服务未及时返回,而页面先加载取用户数据报错的问题

posted @ 2019-12-12 11:12  有蚊子  阅读(1847)  评论(0编辑  收藏  举报