用angularjs过滤来自API的结果
Filter results from API with angularjs
我正在用Angular的API接收数据,并试图过滤min_price小于例如50$的酒店的结果!
$http.get($rootScope.baseurl + 'api/hotels/', {
params: {
page_size: $scope.page_size,
page: $scope.page,
goingTo: goingTo,
ordering: $scope.sortBy,
star: $scope.filter.star,
min_price: ????
}}).then(
function(data, status, headers, config) {
$scope.Hotels = data.data.results;
$scope.count = data.data.count;
$scope.loading = false;
PageService.setContentReady();
},
function(data, status, headers, config) {
$scope.loading = false;
PageService.contentStatus = 'ready';
}
);
如何显示50美元以下的酒店
试着把这个添加到语句的末尾:
// Assuming you're doing some kind of promise resolution;
let deferred = $q.defer();
.success((data) => {
deferred.resolve(data);
});
结果数据,你可以过滤:
// assume 'data' is your real resolved data;
let filteredData = data.filter((hotel) => hotel.min_price < 50);
这是ES6的语法,但你明白了要点。
在下面查找您更新的代码
$http.get($rootScope.baseurl + 'api/hotels/', {
params: {
page_size: $scope.page_size,
page: $scope.page,
goingTo: goingTo,
ordering: $scope.sortBy,
star: $scope.filter.star,
min_price: 50
}
}).then(
function(data, status, headers, config) {
$scope.Hotels = data.data.results;
$scope.Hotels = $scope.Hotels.filter(function(hotel){ return hotel.min_price < 50}); //filter hotels
$scope.count = data.data.count;
$scope.loading = false;
PageService.setContentReady();
},
function(data, status, headers, config) {
$scope.loading = false;
PageService.contentStatus = 'ready';
}
);
相关文章:
- jQuery使用api获取typeform结果
- 从JSON API结果迭代时未定义
- 与网络界面相比,谷歌搜索API有时会重复第一个结果,有时会重复第二个结果
- 从语音识别api结果中删除以前识别的单词
- 如何从autocomplete.getPlace()获取Google Place api结果
- 向 API 结果添加数据
- 如何将谷歌放置 API 结果数组与淘汰赛集成
- 无法在 MVC 中使用 jquery/js 将 json 数据(API 结果)绑定到下拉列表
- 显示牛津项目的情感 API 结果
- 按关键字过滤 Google 地点 API 结果
- 谷歌地图Javascript API-结果格式
- NodeJS ExpressJS如何打印API结果数组
- 如何制作一个显示必应翻译API结果的简单网页
- 从API结果中下载图像
- 限制Google Places Api结果
- 谷歌地图API -结果.几何.Location[0]返回null
- 使用请求获取API结果,并集成到Hubot响应中
- 运行并显示keydown事件的api结果
- 将卡片样式应用于单个Google Feed API结果
- 从 Google 云端硬盘 API 结果中排除特定的 mimeType