在 angular/html 中从 json 访问数组元素时出现问题

Problem accessing an array element from json in angular/html

提问人:LautaroColella 提问时间:8/11/2022 最后编辑:LautaroColella 更新时间:8/11/2022 访问量:56

问:

我有以下json数据,它来自mongoDB:

{"list":
  [{
    "_id":"62f2fabd09de07c09f9e17e2",
    "categoryName":"Web development",
    "subcategories":[
      {
        "subcategoryName":"Backend",
        "skills":["Nodejs", "Express"]
      },
      {
        "subcategoryName":"Frontend",
        "skills":["Css", "SASS"]
      }
    ]
  },

  {
    "_id":"62f33ba62ae52a71daa99a30",
    "categoryName":"Cybersecurity",
    "subcategories":[
      {
        "subcategoryName":"Red team",
        "skills":["cURL","wfuzz"]
      },
      {
        "subcategoryName":"Blue team",
        "skills":["Cloudfare", "Burpsuite"]
      }
    ]
  }]
}

这是我的角度范围,它从端点获取 json 数据:

$scope.listSkills = function() {
    $http.get("/showSkills").success(function(skills_from_database){
        $scope.skills = skills_from_database.list;
    })
}

最后是我的 html/angular 代码

<div ng-repeat="category in skills">
  <h1>{{category.categoryName}}</h1>
  <div ng-repeat="subcategory in category.subcategories">
    <hr>
    <h2>{{subcategory.subcategoryName}}</h2>
    <div ng-repeat="skill in category.subcategories">
      <h5>{{skill.skills}}</h5>
    </div>
  </div>
</div>

结果是: 类别作品

子类别有效,但它从类别中获取所有技能,而不仅仅是从子类别中获取

技能不起作用,它得到了技能部分,但它应该得到所有的数组值,我不知道该怎么做

Final result Json data

javascript 数组 json angularjs mongodb

评论

1赞 Ruan Mendes 8/11/2022
你为什么要嵌套两个?和 ng-repeat=“category.subcategories 中的技能”ng-repeat="subcategory in category.subcategories">
0赞 LautaroColella 8/11/2022
如果我不这样做,它就不会显示技能
0赞 Ruan Mendes 8/11/2022
看看我的答案

答:

1赞 Ruan Mendes 8/11/2022 #1

内部循环需要遍历 的每个成员。我不确定您为什么要再次迭代同一个对象。( 和subcategory.skills ng-repeat="subcategory in category.subcategories"ng-repeat="skill in category.subcategories")

<div ng-repeat="skill in subcategory.skills">
{skill}
</div>

评论

0赞 LautaroColella 8/11/2022
这解决了所有问题,谢谢,现在 subcat 只有相应的技能,并且技能显示时没有数组语法 [“skill”]