我正在努力摆脱目前的局面:我们在某个服务器上部署了聚合物SPA(A)并绑定到某个网址:http://example.com/A,我们需要显示遗留页面的暂时使用旧应用程序,为了这样做,新应用程序(B)已经开发并绑定到不同的URL(http://example.com/B).
B做的是框架遗留应用程序的页面并公开一个按钮,其目的是通过访问document.referrer值并重新加载页面返回到先前的位置,问题是A是SPA,URL不是存在于服务器上.
更详细:
- 用户登录应用程序A(http://example.com/A/overview)
- 用户使用SPA并最终获得由路由管理的特定网址(http:// example/A/stuff/we/sell/jacket)
- 在http://example.com/A/stuff/we/sell/jackets页面中,有一个指向应用程序B的链接,构成显示夹克的遗留应用程序页面
- 用户点击链接并转到http://example.com/ B/legacy/jacket,此时document.referrer等于http://example.com/ A/stuff/we/sell/jacket
- 用户点击按钮关闭视图,应用程序B将窗口的位置设置到document.referrer,试图从他/她来自的地方降落用户.
- 作为应用程序A SPA,服务器上不存在URL http://example.com/ A/stuff/we/sell/jackets,用户(正确地)得到404.
所以问题是:有没有办法拦截应用程序路由中window.location变量的变化,以避免页面的完全刷新,并将用户置于链接所在的页面?