我目前在我的应用中使用$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>
因此,当点击两个按钮时,查询会自行链接,并且网址会转换为:app.com/movies?genre=horror&year=2012
,例如。
$location
这可能吗?我是否以正确的方式解决这个问题?
感谢任何帮助。提前谢谢!
答案 0 :(得分:1)
搜索功能既是getter又是setter。你可以,例如将$ location放在$ scope中,然后像这样使用它:
<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(){...}