I have a Json of categories with an array of products inside it. Search all categories and all products according to category, you are looking for. Now the problem is that I want to return the detail of the product by product id, but in the console it is returning null
.
Json
.factory('Categorias', function() {
var categorias = [
{//Nova Categoria
"idCategoria": 1,
"nomeCategoria": "categoria 1",
"produtos": [
{//Novo Produto
"idProduto": 1,
"nomeProduto": "produto 01A",
},
{//Novo Produto
"idProduto": 2,
"nomeProduto": "produto 02A",
}
]
}
];
return {
all: function() {
return categorias;
},
get: function(categoriaId) {
for (var i = 0; i < categorias.length; i++) {
if (categorias[i].idCategoria === parseInt(categoriaId)) {
return categorias[i];
}
}
return null;
},
getProduto: function(produtoId) {
for (var i = 0; i < categorias.length; i++) {
if (categorias[i].idProduto === parseInt(produtoId)) {
return categorias[i];
}
}
return null;
}
};
});
Controller
.controller('ProdutoDetalheCtrl', function($scope, $stateParams, Categorias) {
$scope.produtosCategoria = Categorias.getProduto($stateParams.produtoId)
console.log($stateParams.produtoId);
console.log($scope.produtosCategoria)
})
Console
1
null