有没有办法从骨干历史中删除特定片段?这是一个用例:
我有一个登录视图,一旦用户成功登录,就不需要将该视图保留在历史记录中,因为在成功登录后返回登录页面是没有意义的。但是,如果用户首先导航到登录页面,我仍然需要历史记录中的登录视图,不登录,而是导航离开登录页面到另一个页面(比如密码重置页面)。如果用户不小心点击了密码重置链接并在那里导航,则单击后退按钮应该将用户带回登录页面。
有没有机会用骨干做这件事?
答案 0 :(得分:0)
回答你的问题:是的,有办法处理这个问题,你只需要在你在应用中设置的必需路由器中实现它。
例如,如果你想:
执行以下操作(此代码段应放在您的路由器中,在initialize函数中):
initialize: function(options) {
this.route("pageId", "login", function(number){
//Call to Backbone.history.start() wether or not you want the history to start on this page
//E.g. don't call it on the index route, just in /reset-password and so on.
});
},
答案 1 :(得分:0)
试试这个:登录操作时使用此方法重定向:
Backbone.history.navigate('/destination/page', {replace: true, trigger: true});