所以我的页面顶部有一组导航链接。
其中一个链接到用户拥有的硬件列表,显示名称和描述。
每次调用渲染时,我都会向控制台打印一条消息。第二次单击不会在视图上运行渲染功能。
我想,当激活已经打开的路由时,骨干网会阻止重新呈现视图或调用事件。当我第二次点击导航链接时,有没有办法让它重新渲染已打开的视图?
答案 0 :(得分:0)
如果路线已经在该路线上,那么Backbone会阻止路线触发。
有一些解决方案。
您可以通过劫持链接并致电router.navigate("route/path", {trigger: true});
来强行触发路线。
或者,更好的是,避免触发路由器并使用api对象。这是Derick Bailey has written about here。第一次之后的每次点击都会使用api重新运行渲染代码,绕过Backbone路由器。您可以在the bbclonemail app中看到此方法的更高级用法。