8

これを機能させる必要があります:

routes: {
  ':product' : 'showProduct',
  ':product/:detail': 'showProductDetail'

':product' ルートが設定されている間は、後で設定されても showProductDetail が呼び出されることはありません。私は次のことを試しました

routes: {
  ':product(/:detail)': showProductOrDetail
}

ただし、2 番目のパラメーターのみが変更された場合、これは呼び出されません。製品自体、または製品と詳細を URL に記載することが重要です。

これを修正する方法を知っている人はいますか?

4

2 に答える 2

17

あなたの問題には少しハッキーな解決策があります。これを行うためのより良い方法があると感じていますが、それはうまくいくはずです:

routes: {
    "product/:id": "showProduct",
    "product/:id/details/:did": "showDetails"
},

showProduct: function(id) {
    this.showDetails(id);
},

showDetails: function(id, did) {
    // Check did for undefined

}
于 2013-11-14T12:35:44.970 に答える