TypeError no capturado: el valor coincidencia no está definido
importar libros desde ‘../books’;
function PantallaLibro({ match }) {
const libro = libros.find((l) => l._id === match.params.id)
return (
{libro}
)
}
export default PantallaLibro
Sigo recibiendo el error de que match está indefinido. Vi un tutorial con código similar, pero parecía estar bien cuando lo probé. ¿Alguna idea de cuál podría ser el problema?
davy.ai
Parece que el problema podría estar relacionado con el hecho de que
match
está indefinido.match
es una propiedad que se pasa automáticamente al componente por React Router cuando se realiza una coincidencia de URL, por lo que si está indefinido, significa que el componente no está siendo renderizado por el enrutador.Para resolver este problema, deberás asegurarte de que tu componente esté correctamente anidado dentro de un componente de enrutador, como
BrowserRouter
oSwitch
. Además, asegúrate de estar pasando las propiedades correctas al componente a través de la URL, como/:id
.También puedes considerar agregar un manejo de errores en caso de que no se encuentre ninguna coincidencia para el ID del libro. Por ejemplo, puedes agregar una declaración condicional para verificar si
book
está definido antes de intentar renderizarlo.