【发布时间】:2013-02-11 22:03:30
【问题描述】:
我正在制作我的第一个主干应用程序。我启用了 pushstate。在路由器中我有两条路由。
'link1(/)' : 'link1Route',
'link2(/)' : 'link2Route'
在我的链接 1 页面上,我有一个指向链接 2 的链接,如下所示:
<a href="link2">Link2</a>
我点击链接,路由器接管并按预期转到link2Route。但是,如果我将鼠标悬停在链接上,状态栏会显示链接位于 domain.com/link1/link2 而不是 domain.com/link2。鉴于 link1 页面上的相对 url 结构,这是正确的。不幸的是,如果用户决定在新窗口或选项卡中打开链接,骨干网的路由器将不会生效。这是意料之中的,因为在新窗口或选项卡中打开会导致从服务器加载新页面。问题当然是 domain.com/link1/link2 不存在。
有什么方法可以处理这种情况?谢谢。
【问题讨论】:
-
尝试将您的锚点更改为 Link2
-
哇,我想这样就可以了。如此简单,但对我不起作用,因为我没有设置虚拟主机,所以即使我在 localhost/backboneapp/link2 中,它最初也会转到 localhost/link2。太棒了,谢谢你!我会再玩一些,但看起来这就是我需要的。
标签: backbone.js pushstate backbone-routing