Solucionado (ver solución)
Solucionado
(ver solución)
1
respuesta

No encuentra el componente "subcategorias"

el primer "warning" (line 6:8) me dice que la "Subcategoria" no está definida; la integro como un elemento en la linea 29 y aún así me salta el error en la linea 43. ojala puedan ayudarme

![ Error en Categoria.jsx] (https://cdn1.gnarususercontent.com.br/6/574960/9f900b2f-da85-404a-a34f-f39f6fab5419.png) )

import { useState, useEffect } from 'react'
import "../assets/css/blog.css"
import { buscar } from '../api/api'
import ListCategories from '../Componentes/ListCategories'
import ListPosts from '../Componentes/ListPosts'
import Subcategoria from './Subcategoria'
import { useParams, Routes, Route, Link, useResolvedPath } from 'react-router-dom'

const Categoria = () => {
    const [subcategorias, setSubcategorias] = useState([])
    const { id } = useParams()

    const url = useResolvedPath("").pathname


    useEffect(() => {
        buscar(`/categorias?id=${id}`, (response) => {
            setSubcategorias(response[0].subcategorias)
        })
    }, [id])


    return (
        <>
            <div className='container'>
                <h2 className='title-page'>Pet Noticias</h2>
            </div>
            <ListCategories />
            {/*<Subcategoria />*/ }
            <ul className='category-list container flex'>
                {
                    subcategorias.map(subcategoria => (
                        <li className={`category-list__category category-list__category--${id}`} key={subcategoria}>
                            <Link to={`${url}/${subcategoria}`}>
                                {subcategoria}
                            </Link>
                        </li>
                    ))
                }
            </ul>
            <Routes>
                <Route path='/' element={<ListPosts url={`/posts?categoria=${id}`} />} />
                <Route path='/:subcategoria' element={<SubCategoria />} />
            </Routes>

        </>
    )
}

export default Categoria
1 respuesta
solución!

Hola José,

Por lo que puedo ver en tu código, parece que tienes un pequeño error de tipografía. En la línea 43, estás intentando utilizar un componente llamado "SubCategoria", pero en la línea 9, lo has importado como "Subcategoria". En JavaScript, las mayúsculas y minúsculas importan, por lo que "SubCategoria" y "Subcategoria" se consideran dos cosas diferentes.

Por lo tanto, para solucionar tu problema, simplemente cambia la línea 43 para que coincida con la forma en que importaste el componente. Debería quedar así:

<Route path='/:subcategoria' element={<Subcategoria />} />

Espero que esto solucione tu problema. Si no es así, por favor, proporciona más detalles y estaré encantada de ayudarte a solucionarlo.

Espero haber ayudado y buenos estudios!