有没有办法在 Backbone.js 应用程序中组合散列和非散列URL?
我设置Backbone.history.start({pushState: true})
。当用户单击某个链接时,我从服务器获取 JSON 数据,更新页面,并调用Backbone.history.navigate
以更改浏览器中的 URL(例如 fromexample.com/zlinsky/kampan/mf/
到example.com/moravskoslezsky/kampan/mf/
)。
如果用户从浏览器复制 URL 并在第二个选项卡中打开,他将看到相同的页面(因此以这种方式更新的每个页面在服务器上都有相应的页面)。这正是我想要的。
但是现在我有问题...
我<select>
的页面上也有几个。当用户更改其中的值时,我会在页面上进行一些动态更改(无需从服务器获取 JSON,仅在客户端进行更新)。我想根据 更改 URL <select>
,例如更改为example.com/moravskoslezsky/kampan/mf/#state1
(因此,当有人发送此 URL 时,对方将看到与发件人处于相同状态的相同页面)。
我找不到方法,如何在 Backbone.js 中做到这一点。如果我设置pushState: true
on Backbone.history
,Router
忽略哈希标签。
如果我设置pushState: false
,我将无法像我在上面第一段中描述的那样设置 URL。
谢谢你的任何提示。