我有一个骨干木偶应用程序,允许用户使用各种标准进行搜索。从搜索结果中,他们可以点击一个链接,将他们从主干应用程序导航到一个标准的静态页面。
我如何设置才能使他们在浏览器中单击后退时,主干搜索页面恢复到以前的状态(搜索条件和结果完好无损)?
谢谢
发布于 2013-10-11 18:44:40
您可以将backbone router用于搜索页面并将状态保存在location.hash中,这样所有填充/渲染都将由侦听路由器事件的路由器或视图进行管理:
" route :name“(参数)-在匹配特定路由时由路由器触发。
" route“(route,params) -当匹配到任何路由时由路由器触发。
例如#search/query/nuggets将触发此路由:
'search/query/:query-string': function(query) {
yourCollection.fetch({data: {query: query}})
}在你看来
initialize: function() {
this.listenTo(yourCollection, 'sync', this.render)
}因此,然后用户单击/或在搜索字段中敲击enter,您只需触发路由更改:yourRouter.navigate("search/query/"+yourQuery, {trigger: true})
https://stackoverflow.com/questions/19309860
复制相似问题