Javascript 如何在Angular JS中使用ng repeat填充数组

Javascript 如何在Angular JS中使用ng repeat填充数组,javascript,angularjs,angularjs-ng-repeat,Javascript,Angularjs,Angularjs Ng Repeat,在AngularJS 1.4版中,如何使用特定id的ng repeat填充对象数组 { "tagTypeDetails": [ { "id": 3, "type": "Project Type", "Tags": [ {"id": 21, "name": "Residential"}, {"id": 22, "name": "Office"}, {"id": 23, "name": "Retail"}

在AngularJS 1.4版中,如何使用特定id的
ng repeat
填充对象数组

{
  "tagTypeDetails": [
    {
      "id": 3,
      "type": "Project Type",
      "Tags": [
        {"id": 21, "name": "Residential"},
        {"id": 22, "name": "Office"},
        {"id": 23, "name": "Retail"},
        {"id": 24, "name": "Hospitality"}
      ]
    },
    {
      "id": 6,
      "type": "Styles",
      "Tags": [
        {"id": 47, "name": "Scandinavian"},
        {"id": 48, "name": "Industrial"},
        {"id": 49, "name": "Contemporary"},
        {"id": 50, "name": "Minimalistic"},
        {"id": 51, "name": "Modern"},
        {"id": 52, "name": "Eclectic"}
      ]
    },
    {
      "id": 9,
      "type": "Area",
      "Tags": [
        {"id": 68, "name": "500-1000 sqft"}
      ]
    },
    {
      "id": 30,
      "type": "Project Budget",
      "Tags": [
        {"id": 112 ...}
      ],
      ...
    }
  ]
}
这是html视图中的数据,我想显示所有 基于特定标签字段的“标签”名称 特定id

我从所有的身份证上得到了姓名标签

示例:

项目类型
//此处将显示所有标记名称//我只想为type=“Project type”指定
{{tag.name}

如果能提供最好的解决方案,我们将不胜感激。。由于我有替代解决方案,但这不是最好的做法,因此我不认为这里有任何填充内容的需要,只要使用
ng显示所需的标记(如果
):

<label ng-repeat="tag in tags.Tags" ng-if="tag.type === 'Project Type'">

如果我正确理解您的问题,您可以使用过滤器。

我就是这样做的

vm.projectTag = {
    types: vm.getTags('Project Type'),
    styles: vm.getTags('Styles'),
    budgets: vm.getTags('Project Budget (S$)'),
    areas: vm.getTags('Area')
};

vm.getTags = function (tagName) {
    for (var i = 0; i < vm.tagsData.length; i++) {
        if (tagName == vm.tagsData[i].type) {
            return vm.tagsData[i].Tags;
        }
    }

    return [];
};


<label for="type" class="col-sm-2 control-label x-medium" id="label0">Project Type</label>
<div class="clearfix-height15"></div>
<div class="btn-group col-sm-8" data-toggle="buttons">
    <label class="btn btn-default btn-tag" ng-class="{active: tag.checked}" ng-repeat="tag in addProjectVm.projectTag.types"
                                                                         ng-click="addProjectVm.selectedTags.projectType = tag.id">
        <input type="radio" id="projectType" name="projectType" ng-model="tag.checked"> {{tag.name}}
    </label>
</div>
vm.projectTag={
类型:vm.getTags('Project Type'),
样式:vm.getTags('styles'),
预算:vm.getTags('projectbudget(S$)'),
区域:vm.getTags('Area')
};
vm.getTags=函数(标记名){
对于(var i=0;i
您所说的特定标签字段id是什么意思?就性能而言,这不是只填充标签的正确方法。。谢谢
vm.projectTag = {
    types: vm.getTags('Project Type'),
    styles: vm.getTags('Styles'),
    budgets: vm.getTags('Project Budget (S$)'),
    areas: vm.getTags('Area')
};

vm.getTags = function (tagName) {
    for (var i = 0; i < vm.tagsData.length; i++) {
        if (tagName == vm.tagsData[i].type) {
            return vm.tagsData[i].Tags;
        }
    }

    return [];
};


<label for="type" class="col-sm-2 control-label x-medium" id="label0">Project Type</label>
<div class="clearfix-height15"></div>
<div class="btn-group col-sm-8" data-toggle="buttons">
    <label class="btn btn-default btn-tag" ng-class="{active: tag.checked}" ng-repeat="tag in addProjectVm.projectTag.types"
                                                                         ng-click="addProjectVm.selectedTags.projectType = tag.id">
        <input type="radio" id="projectType" name="projectType" ng-model="tag.checked"> {{tag.name}}
    </label>
</div>