2017-03-04 153 views
1

我創建了一個搜索引擎,用戶可以選擇多個過濾器以及一個查詢。所有這些都是可選的,並加到篩選結果集中。在Vue 2路由器中設置嵌套可選參數

因此,所有這些情況都是可能的,並且被妥善存放在關鍵字的對象:

  • 與查詢
  • 按國家搜索(不指定任何查詢)
  • 搜索按類型搜索(不指定任何查詢)
  • 搜索與一個國家和一種
  • 查詢...

用Vue Router處理這個問題的最佳方法是什麼?我希望搜索路線更新爲無論採用哪種過濾器。

至於我可以告訴我不能使用多個可選參數,除非我指定所有可能的組合(這是一個有點傻),如:

export const routes = [ 
{ path: '/search', name: 'search', component: Search, children: [ 
    { path: 'query/:query, component: Search }, 
    { path: 'type/:type', component: Search }, 
    { path: 'country/:country', component: Search }, 
    ... 
]}, 

...我沒有看到任何解決問題的其他方式。什麼是最好的選擇?

回答

1

一個選擇可以使用的查詢參數,所以你的URL看起來是這樣的:

/搜索全國=陛下&類型= middleearth

您可以從$route.query訪問這些。