如何在Backbone.js中触发主干路由器事件?

如何在Backbone.js中触发主干路由器事件?,backbone.js,url-routing,backbone-routing,Backbone.js,Url Routing,Backbone Routing,js中的路由器负责路由客户端页面,并根据URL将它们连接到操作和事件。但是如何触发url更改呢?我的意思是,如果唯一的方法是将与页面路由相关联的元素包含在标记中 因为我已经将mousedown和mouseup事件与用于路由的元素相关联,如果我将其放入标记中,mousedown和mouseup事件肯定会变得无效,因为它将与标记的click事件相冲突。那么,还有其他方法进行路由吗?您可以使用: 导航路由器。导航(片段,[选项]) 每当您在应用程序中到达要另存为URL的点时,请调用导航,以更新URL。

js中的路由器负责路由客户端页面,并根据URL将它们连接到操作和事件。但是如何触发url更改呢?我的意思是,如果唯一的方法是将与页面路由相关联的元素包含在
标记中

因为我已经将mousedown和mouseup事件与用于路由的元素相关联,如果我将其放入
标记中,mousedown和mouseup事件肯定会变得无效,因为它将与
标记的click事件相冲突。那么,还有其他方法进行路由吗?

您可以使用:

导航
路由器。导航(片段,[选项])

每当您在应用程序中到达要另存为URL的点时,请调用导航,以更新URL。如果还希望调用路由功能,请将触发器选项设置为
true

因此,如果您的路由器是
r
,并且您想要激活
#/some_路由
,那么您可以:

r.navigate('some_route', { trigger: true });

演示(请打开您的控制台):

还有一个问题,因为我必须访问模型中的数据以提供我的url的id,例如“category/:id”。我该怎么做?@chaonextdoor:你应该能够以字符串的形式构建合适的路由,并将其交给
navigate
r.navigate('category/'+m.get('id'),{trigger:true})
嗨,我这里有另一个主干路由器问题:[你能帮我解决吗?非常感谢。