【发布时间】:2017-03-18 14:42:26
【问题描述】:
我正在使用 Angular 2.1.2。
我有一个身份验证令牌(使用 angular2-jwt),如果它过期,我的 webApi 调用将失败并出现 401 错误。我正在寻找用户不会丢失任何输入数据的解决方案。
我可以捕捉到这个 401 并使用登录打开一个模式。然后用户登录,模式消失,他们看到他们的输入屏幕。但是,失败的请求显示错误,因此我需要重新处理请求。如果是路由器导航,则初始数据尚未加载。
我可以重新加载页面,但如果我 router.navigate 到同一页面,它似乎并没有真正重新加载页面。我不想在单页应用程序上重新加载整页。有没有办法强制 router.navigate 运行,即使它是当前页面?
重新导航仍然是个问题,因为我会丢失任何尚未保存的新输入数据。
理想情况下,请求只会“暂停”,直到用户从模式登录。我还没有找到实现这一点的方法。
有什么想法吗? 有最佳做法吗?
【问题讨论】:
-
用 Redux 处理应用程序状态怎么样?
-
如果绑定到共享服务的数据,重新导航后不会丢失。类似于 Redux 的建议。
-
重新加载页面也需要保存吗?
标签: angular angular2-routing angular2-jwt