1

Backbone.js を使用しており、ルーターを持っています。これはルーターのルート プロパティです。

routes: {
    "pagea": "pageafunc",
    "pageb": "pagebfunc",
    "pagec": "pagecfunc",
}

次のようなルートを追加することは可能ですか:

"mypath/*subroute": function(subroute) {
    //do somethong  
}

?

4

2 に答える 2

2

いいえ、routesオブジェクトは文字列値のみを持つことができます。

独自のコールバックを渡す場合は、プログラムでルートを設定する必要があります。たとえば、ルーターの初期化関数では、次のことができます。

this.route('mypath/*subroute', 'mypath_subroute', function(){
  // Route callback stuff.
});

とはいえ、これはすぐに判読できなくなる可能性があります。つまり、初期化関数をスキャンして、定義したすべてのルートを知る必要があるため、すべてのルートをroutesオブジェクトに保存する方がはるかにクリーンです。または、少なくともルーター自体にルート機能本体を保持し、読みやすくするためにルートパスを別のセクションに保持します。

于 2012-11-15T17:16:27.283 に答える