2016-05-24 67 views
2

我正在使用角度1與新組件路由器。 我有$ routeConfig這樣的:角度1組件路由器查詢參數

{ path: '/list', name: 'ListCmp', component: 'listCmp', useAsDefault: true } 

我希望導航的自定義查詢參數此組件。

$router.navigate(['ListCmp', {itemId: 1, name: 'prop1'}]); 

航行後,我得到這個網址:本地主機/列表;名稱= 1; PROP1 的是什麼問題,我有很多的,我用$ location.search()的地方,但是這方法不能使用分號分隔值解析url。我怎樣才能讓這個新的路由器生成舊式查詢參數,如:?

本地主機/列表名稱= 1個& PROP1

回答

2

因爲ListCmp是另一個組件的子路徑,參數將在生成矩陣格式,而不是查詢格式。你可以閱讀更多關於矩陣參數與查詢參數here

它的意思是「矩陣參數適用於特定的路徑元素,而查詢參數作爲一個整體適用於請求」。

關於您的問題,您是否需要使用$location.search()?您可以使用$routerOnActivate生命週期掛鉤並訪問ListCmp中的參數。