我有一个通过Nginx提供的Angular 6 Web应用程序。
Nginx是already set up to forward all requests to index.html,因此Angular路由器可以完全进行路由:
try_files $uri $uri/ /index.html?$args;
在以下情况下,我遇到的问题与用户重新加载浏览器窗口有关:
- 用户访问 1。选择页面,选择内容并单击以转到下一页。
- 因此,在后台,需要为下一页设置一堆服务 state 。
- 现在Angular路由器向用户显示 2。信息页面,它取决于“选择页面”上配置的服务。
- 到目前为止,一切正常,但是现在用户刷新了 2。出于某些原因,在浏览器中显示信息页面。
- 现在Angular路由器尝试再次显示信息页面,但失败了,因为在“选择页面”中设置的服务状态不再存在,因此信息页面缺少所有必要的信息(并且可以没有错误(如果未编码任何备用广告)。
是否有一种方法可以自动恢复状态,以便再次正确显示“信息”页面?还是浏览器刷新是无法访问任何先前状态的冷重启?
- 请注意,我并不是在说用户直接访问信息页面,在这种情况下,1.选择页面就是将用户带到2.信息页面的原因,因此按原样显示信息页面应该是蛋糕,原则上。
- 我不是在说要Angular路由器再次访问该页面,触发是用户刷新浏览器窗口。
用户可能会错误地刷新浏览器选项卡,如果在某些移动浏览器中“向下滑动”太多,就会发生这种情况。