Angularjs 下划线用于在角度控制器中查找结果

Angularjs 下划线用于在角度控制器中查找结果,angularjs,underscore.js,Angularjs,Underscore.js,我有一个控制器设置,其输入带有采购订单号。为了得到结果,我正在设置数据[0],并始终返回第一个结果。我想设置一个验证,输入的数字将返回正确的结果。在我可以这样做之前,我需要遍历结果,只返回我需要的数据,而不是将其硬编码到第一个结果。我使用下划线并设置了以下内容,但没有检索到我想要的结果。有人能告诉我怎么用下划线来做吗 强调不起作用: var test = _.map(data, function(data) { return {

我有一个控制器设置,其输入带有采购订单号。为了得到结果,我正在设置数据[0],并始终返回第一个结果。我想设置一个验证,输入的数字将返回正确的结果。在我可以这样做之前,我需要遍历结果,只返回我需要的数据,而不是将其硬编码到第一个结果。我使用下划线并设置了以下内容,但没有检索到我想要的结果。有人能告诉我怎么用下划线来做吗

强调不起作用:

            var test = _.map(data, function(data) {
                return {
                    purchaseOrderNumber: data.purchaseOrderNumber
                };
            });

            console.log(test);
控制台输出:

[Object, Object]
0: Object
1: Object
length: 2
__proto__: Array[0]
html:

        <form novalidate name="goodsIssueForm" class="form-group cnc-inline-field">
            <input type="number" class="form-control" name="purchaseOrderInput" ng-model="purchaseOrderInput" ng-change="resetGoodsIssueValidity()" required></input>
            <button data-auto="rpoBtn" ng-click="getPurchaseOrder()" class="btn btn-primary">Find</button>
        </form>

GoodsIssueService.getPurchaseOrders做什么?您已将该数字作为参数传递。就您的映射而言,它将从数组中的所有项返回,而无需在其中添加条件。你想要的是使用一个过滤函数,它只是一个从API获取PO的服务,但是如果它来自API,它不就只包含那个数字的数据吗?不清楚您在这里需要什么我只想比返回的更深一层,所以现在我有[Object,Object]0:Object 1:Object,但我想要的只是0:Object的结果没有显示筛选条件或数据结构。。。所以还是不确定你需要什么。也不确定您在视图中如何使用此功能
    $scope.getPurchaseOrder = function() {
        var purchaseOrderNumber = $scope.purchaseOrderInput;

        GoodsIssueService.getPurchaseOrders(purchaseOrderNumber)
        .then(function(data) {
            if ($scope.goodsIssueForm.$valid) {
                $scope.goodsIssueDocument = data;
                $scope.goodsIssueDocument.purchaseOrderNumber = data[0].purchaseOrderNumber;
            }

        })
        .catch(function() {
            $scope.goodsIssueForm.$setValidity('notfound', false);
        });
    };