我正在为我的路由器使用以下配置:
var Router = Backbone.Router.extend({
routes: {
'item/:param(/:param-2)': 'func1',
// Default
'*actions': 'defaultAction'
}
});我将路由器初始化如下:
var router = new Router;
router.on('route:func1', function(param1, param2){
console.log("Route: summary, class_id: " + class_id);
});但是只有#item/1格式的URL与func1路由匹配。
像#item/1/3这样的URL被传递给defaultAction路由。
我无法理解为什么可选参数不匹配。
发布于 2013-11-09 00:53:26
对于其他人,参数名中不允许使用"-“字符。(尽管它被允许成为路由的一部分。)
您可以将"param-2“替换为"param_2”,这样就可以了。
https://stackoverflow.com/questions/18719092
复制相似问题