在我的Angular應用程序中,我顯示了一個清單項目列表。在此頁面上,有一個窗體可以過濾或執行搜索。此表單提交到當前路由模板/頁面的相同url,但在url中追加get參數以執行過濾/搜索。即/#/庫存,和/#/庫存?關鍵字= widgetname在AngularJS路由URL中獲取參數
下面是基本路線...
myApp.config(function($routeProvider) {
$routeProvider
.when('/inventories', {
templateUrl: '/inventories.html',
controller: 'inventoriesController'
})
});
我知道我可以做類似下面的具有可變的路線的例子參數如/#/存貨/ 12爲特定的庫存資源,像這樣......
.when('/inventories/:inventory_id', {
templateUrl: function(params) { return '/inventories/' + params.inventory_id + '.html'},
controller: 'inventoryController'
})
但我想對於像/#/庫存的路線呢?關鍵字= widgetname什麼&倉庫= 1 & min_qty = 5其中包含我所有的濾鏡參數rs中的url字符串?如何在路由中容納url GET參數?
我想這樣的事情,但沒有工作...
.when('/inventories?:get_params', {
templateUrl: function(params) { return '/inventories?' + params.get_params},
controller: 'inventoryController'
})
我知道,我可以嘗試使用$ HTTP服務,並通過在範圍搭售結果的陣列的使用JSON工作ng-repeat或類似的東西,但我寧願只重新獲取從url過濾的結果返回的模板。這可能嗎?
您可以像'/ inventory /:inventory_id /:keywords /:warehouse /:min_qty'那樣在路線中添加一些參數,以便僅使用params就可以訪問相同的參數 –