2

ルーターに次の構成を使用しています。

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 ルートに一致します。

#it​​em /1/3のような URLは、defaultAction ルートに渡されます。

オプションのパラメーターが一致しない理由がわかりません。

4

1 に答える 1

1

それ以外の場合、パラメータ名に「-」文字を使用することはできません。(ただし、ルートの一部であることは許可されています。)

「param-2」を「param_2」に置き換えると機能します。

于 2013-11-09T00:53:26.280 に答える