繁体   English   中英

再次单击链接时刷新主干js中的视图

[英]Refresh a view in backbone js when link is clicked again

因此,我在页面顶部有一组导航链接。

其中之一链接到用户拥有的硬件列表,并显示名称和描述。

  1. 如果显示正常,我单击导航链接和我的硬件列表。
  2. 进入数据库,更改硬件之一的名称。
  3. 现在,我再次单击页面上的导航链接。 我希望骨干再次渲染该页面。 但事实并非如此。

每次调用渲染时,都会向控制台打印一条消息。 第二次单击不会在视图上运行渲染功能。

我想当激活已经打开的路由时,骨干网会阻止重新呈现视图或调用事件。 当我第二次单击导航链接时,有什么方法可以重新渲染已经打开的视图?

您是正确的,如果骨干已经在该路由上,它将阻止该路由触发。

有一些解决方案。

您可以通过劫持链接并调用router.navigate("route/path", {trigger: true});来强制触发路由router.navigate("route/path", {trigger: true});

或者,甚至更好的是,避免触发路由器并使用api对象。 这是Derick Bailey在这里写的 第一次单击后的每次单击都将使用api来重新运行渲染代码,从而绕过Backbone路由器。 您可以在bbclonemail应用程序中看到此方法的更高级用法。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM