【问题标题】:why does my angularjs $http.get request with params not return filtered results?为什么我的带有参数的 angularjs $http.get 请求不返回过滤结果?
【发布时间】:2016-04-22 19:07:22
【问题描述】:

如果这是一个愚蠢的问题,我深表歉意。我在客户端控制器中运行 $http.get() 请求以检索包含特定 ID 的对象。如果有人能指出我正确的方向,我将不胜感激。提前致谢!

$http
    .get('api/offers', {
        params: {
            taskId: vm.task._id
        }
     })
     .success(function (data,status) {
          vm.task.offers = data;
          console.log(data);
//          if (vm.task.offers.taskId === vm.task._id) {
//              console.log(vm.task.offers);
//          }
     });

但是,请求返回的是 mongodb 文档中的所有数据。

我已尝试在我的 html 页面中进行过滤,但也无法正常工作。

<ul class="list-group" ng-repeat="offer in vm.task.offers | filter: { offer.taskId : vm.task._id } : true">

获取请求在我的浏览器网络资源中获取/api/offers?taskId=570999f043131bb7ade86185,此端点再次返回我文档中的所有条目,而不是通过taskId过滤。

【问题讨论】:

  • 你是如何访问服务器上的taskId的?

标签: angularjs mongodb get angular-filters


【解决方案1】:

ng-repeat 过滤你犯了一个错误,如下所示。

ng-repeat="offer in vm.task.offers | filter: { taskId : vm.task._id } : true"

【讨论】:

  • 非常感谢您的快速响应。我现在就试试这个,让你知道我的进展如何!
  • 这非常有效。我可以在 6 分钟内接受作为答案。非常感谢!
  • @loulala 很高兴为您提供帮助。谢谢:)
猜你喜欢
  • 1970-01-01
  • 2018-04-28
  • 1970-01-01
  • 2012-09-23
  • 2020-04-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-08-29
相关资源
最近更新 更多