2015-11-03 51 views
1

我目前在我的應用中使用$location,因此我可以將地址欄中的參數發送到我的$http GET請求。像這樣:

var params = $location.search(); 
$http.get(url, params).then(function(){ 
    ... 
} 

是否有可能一個ng-click屬性添加到一個元素在我看來,這樣我就可以傳遞參數到地址欄,所以我過濾GET請求?

事情是這樣:

<div ng-click="genre=romance">Romance</div> 
<div ng-click="genre=horror">Horror</div> 

<div ng-click="year=2012">2012</div> 
<div ng-click="year=2011">2011</div> 

所以,當點擊這兩個按鈕查詢連鎖本身和URL轉換爲:app.com/movies?genre=horror&year=2012,例如。

這可能與$location和我正在以正確的方式?

任何幫助表示讚賞。提前致謝!

回答

1

搜索功能既是getter又是setter。你可以例如把$位置在$範圍,然後用它是這樣的:

<div ng-click="$location.search('genre','romance')">Romance</div> 
<div ng-click="$location.search('genre','horror')">Horror</div> 
<div ng-click="$location.search('year','2012')">2012</div> 
<div ng-click="$location.search('year','2011')">2011</div> 

並修改$ http.get:

$http.get($location.absUrl()).then(function(){...}