2013-03-19 146 views

回答

3

骨幹routes objects不提供的靈活性相當這一水平。但是,您可以使用手動route method添加路由的正則表達式:

路線router.route(route, name, [callback])

手動創建路由器的路由,該route參數可以是一個路由字符串或正則表達式。

所以你可以做這樣的事情在你的路由器:

initialize: function() { 
    this.route(/^myaction\/.*PleaseMatchMeIfYourFindMe/, 'handler_method'); 
} 

你當然會調整正則表達式匹配您的實際需求。如果您想要將正則表達式的一部分作爲您的處理程序的參數,請根據需要添加捕獲組。

演示:http://jsfiddle.net/ambiguous/pFXr6/

-1

你的問題不清楚。您可以在路由定義中使用的參數是這樣的:

var Route = Backbone.Router.extend({ 
    routes: { 
     'myaction/:param1/:param2/:param3/:param4': 'myActionCallback', 
    }, 
    myActionCallback: function(param1, param2, param3, param){ 
     //your magic starts here 
    } 
+0

我知道標準示例模式。我不知道什麼是不明確的。如果URL在我的操作後包含指定的字符串,則匹配路由。 – 2013-03-19 05:30:10