Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Solução - Subcategorias Não Estão Sendo Renderizadas

Usei o código dessa forma e deu certo.

import React, { useEffect, useState } from "react"; import "../assets/css/blog.css"; import ListaCategorias from "../components/ListaCategorias"; import ListaPost from "./../components/ListaPost"; import { Link, Route, useParams, useRouteMatch, Switch, } from "react-router-dom"; import { busca } from "../api/api"; import SubCategoria from "./SubCategoria";

const Categoria = () => { const { id } = useParams(); const { url, path } = useRouteMatch(); const [subcategorias, setSubCategorias] = useState([]);

useEffect(() => {
    busca(`/categorias/${id}`, (categoria) => {
        setSubCategorias(categoria.subcategorias);
    });
}, [id]);

return (
    <>
        <div className="container">
            <h2 className="titulo-pagina">Pet Notícias</h2>
        </div>

        <ListaCategorias />
        <ul className="lista-categorias container flex">
            {
                subcategorias.map((subcategoria) => (
                    <li
                        className={`lista-categorias__categoria lista-categorias__categoria--${id}`}
                        key={subcategoria}
                    >
                        <Link to={`${url}/${subcategoria}`}>
                            {subcategoria}
                        </Link>
                    </li>
                ))
            }
        </ul>
        <Switch>
            <Route exact path={`${path}/`}>
                <ListaPost url={`/posts?categoria=${id}`} />
            </Route>
            <Route path={`${path}/:subcategoria`}>
                <SubCategoria />
            </Route>
        </Switch>
    </>
);

}

export default Categoria;

1 resposta
solução!

Olá, Adriana! Tudo bem?

Fico feliz em saber que você conseguiu resolver o problema com o código que utilizou.

Caso ainda tenha mais alguma sugestão, por favor, poste sempre que quiser :D

Um abraço e bons estudos.