骨干路由:可选参数不匹配

时间:2013-09-10 12:33:31

标签: backbone.js backbone-routing

我在路由器上使用以下配置:

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 的网址才会与func1路由匹配。

#item / 1/3 等网址会传递给defaultAction路由。

我无法弄清楚为什么可选参数不匹配。

1 个答案:

答案 0 :(得分:1)

对于其他人,参数名称中不允许使用“ - ”字符。 (虽然允许它是路线的一部分。)

您可以将“param-2”替换为“param_2”,它将起作用。

相关问题