Tengo los siguientes datos json, que provienen de 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"] } ] }] }
Este es mi alcance angular, que obtiene los datos json del punto final:
$scope.listSkills = function() { $http.get("/showSkills").success(function(skills_from_database){ $scope.skills = skills_from_database.list; }) }
Y finalmente está mi código 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>
El resultado es: Categoría obras
La subcategoría funciona, pero obtiene todas las habilidades de la categoría, no solo de la subcategoría
Habilidades no funciona, obtiene la sección de habilidades pero debería obtener todos los valores de las matrices, lo cual no sé cómo hacer.
Su ciclo interno debe iterar sobre cada miembro de subcategory.skills
. No estoy seguro de por qué está iterando nuevamente sobre el mismo objeto. ( ng-repeat="subcategory in category.subcategories"
y ng-repeat="skill in category.subcategories"
)
<div ng-repeat="skill in subcategory.skills"> {skill} </div>