繁体   English   中英

如何更改URL而不导致Backbone重新呈现页面?

[英]How do I change the URL without causing Backbone to re-render the page?

我有一个Backbone应用程序。

在一个区域中,有子视图。 这些是从骨干路由器正确路由的。

routes: { primary-view(/:subview): 'someFunction' }

所以我最终得到一个URL,例如: #/primary-view/subview

每当用户单击更改子视图的菜单项时,我都希望URL保持最新。 这些单击是在主视图中处理的,因此,当用户单击这些链接之一时,重新呈现的页面的唯一部分是包含子视图的div。

我努力了:

Backbone.history.navigate('#/primary-view/' + subview, {trigger: false});

和:

window.location.hash = '#/primary-view/' + subview;

但是,这两者都会导致重新渲染整个主视图。

通常,这可以通过router.navigate实现。

每当您在应用程序中到达要另存为URL的位置时,请调用Navigation以更新URL。

根据您的情况,您应该从网址中删除哈希

Backbone.history.navigate('/primary-view/' + subview, {trigger: false});

要么

router.navigate('/primary-view/' + subview)

暂无
暂无

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

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