2013-09-01 25 views
0

在我的Backbone.js應用程序中,我有一個路徑結構,它具有一些通用部分,我只想在一個處理程序中處理它。例如,這些網址backbonejs中的多個路由處理程序

/#scenario/1/show-report 
/#scenario/2/foo 
/#scenario/3/bar 

都需要將場景設置爲其特定標識符。目前,我在每個路由處理程序中執行此操作(在show-reportfoobar的處理程序中)。有什麼方法可以捕獲URL到scenario/:id/,調用相應的函數並由特定的處理程序處理其餘部分?

回答

2
var Router = Backbone.Router.extend({ 
    routes : { 
     'scenario/:id/:type' : 'scenario' 
    }, 
    scenario : function (id, type) { 
     switch (type) { 
      case 'show-report': console.log('show-report'); break; 
      case 'foo':   console.log('foo'); break; 
      case 'bar':   console.log('bar'); break; 
     } 
    } 
}); 

new Router(); 
Backbone.history.start(); 
+0

謝謝。如果它只有幾條路線,這將工作,但它幾乎是應用程序的所有路線,而且它們分散在不同的彼此相隔絕的模塊中。 – orange

相關問題