Javascript 如何在不导致主干重新呈现页面的情况下更改URL?
我有一个主干应用程序 在一个区域中,存在子视图。这些都是从主干路由器正确路由的Javascript 如何在不导致主干重新呈现页面的情况下更改URL?,javascript,backbone.js,Javascript,Backbone.js,我有一个主干应用程序 在一个区域中,存在子视图。这些都是从主干路由器正确路由的 routes: { primary-view(/:subview): 'someFunction' } 因此,我最终得到了一个URL,如:#/primary view/subview 每当用户单击更改子视图的菜单项时,我希望使URL保持最新。这些单击在主视图中处理,因此当用户单击其中一个链接时,页面中唯一重新呈现的部分是包含子视图的div 我试过: Backbone.history.navigate('#/prim
routes: { primary-view(/:subview): 'someFunction' }
因此,我最终得到了一个URL,如:#/primary view/subview
每当用户单击更改子视图的菜单项时,我希望使URL保持最新。这些单击在主视图中处理,因此当用户单击其中一个链接时,页面中唯一重新呈现的部分是包含子视图的div
我试过:
Backbone.history.navigate('#/primary-view/' + subview, {trigger: false});
以及:
但这两种情况都会导致重新渲染整个主视图。通常,这可以通过以下方法实现 每当您在应用程序中到达要另存为URL的点时,调用navigate以更新URL 在您的情况下,您应该从URL中删除哈希值
Backbone.history.navigate('/primary-view/' + subview, {trigger: false});
或
你不在子视图中使用事件吗?单击功能可以在不更改url或任何内容的情况下进行处理?Router.navigate调用History.navigate,我已经尝试过了。
Backbone.history.navigate('/primary-view/' + subview, {trigger: false});
router.navigate('/primary-view/' + subview)