2014-02-06 72 views
0

我有一个我想要能够浏览的路线。 不幸的Backbone不能使两次导航相同的路线。骨干不添加历史路线

是否有可能不保存这条路线到历史?

我有这样的路线:

app_router.on('route:deleteFile', function(filename){ 
     var r=confirm("Do you really want to delete "+filename); 
     if (r==true) 
      { 
      //delete instruction 
      } 
    }); 

如果我不接受错误的确认,我无法选择相同的文件再次删除。 因为路线已经到达。

回答

1

一个解决方案包括导航到以前的路线,当你不接受的确认,没有触发它:

app_router.on('route:deleteFile', function(filename){ 
    var r=confirm("Do you really want to delete "+filename); 
    if (r==true) 
     { 
     //delete instruction 
     } 
    else 
     { 
     Backbone.history.navigate(/* previous rout */, {trigger: false}); 
     } 
}); 
+0

我必须设置以前的路线为注释,还是我进入以前的路由为路由,我将通过router.navitage(“PreviousRoute”)导航到它? – marcel

+0

我提到了PreviousRoute根作为一个例子,你可以放任何不同于当前'route:deleteFile'的根,并且你输入路由,就像你通过router.navitage(“PreviousRoute”)导航到的那样。 –

+0

它的工作原理。我可以放任何路线。由于触发:假它没有做任何事情:) – marcel