Tengo removeIndividualBook en index.js que elimina el libro individual. Esta funcionalidad funcionaba bien desde el componente Book .
Estoy creando una nueva Quantity de componentes e intentando acceder a removeIndividualBook allí. Estoy pasando removeIndividualBook como accesorio de index.js a Book.js a Quantity.js.
En Cantidad.js estoy obteniendo Uncaught TypeError: removeIndividualBook is not a function
índice.js
// Remove Individual book const removeIndividualBook = (id) => { const updatedBookData = booksData.filter((book) => { return book.id !== id; }); setBooksData(updatedBookData); }; <Book key={index} {...book} removeIndividualBook={removeIndividualBook}></Book>Libro.js
const Book = ({description,id,removeIndividualBook}) => { const clickHandler = () => { alert(description); }; <Quantity id={id} removeIndividualBook={removeIndividualBook} />Cantidad.js
const Quantity = (id, removeIndividualBook) => {const Quantity = (id, removeIndividualBook) => {} return ( <> <button className="button" onClick={() => removeIndividualBook(id)}> ------>>> ErrorComo puedo ver en su componente Cantidad.js, su sintaxis no es buena. Debería ser
const Quantity = ({id, removeIndividualBook}) => { return ( <> <button className="button" onClick={() => removeIndividualBook(id)}> ... ) los accesorios deben estar envueltos en { } (destruidos). Creo que ese es el problema que planteas.
Reproduje de alguna manera tus componentes con un fragmento de código.
Creo que su problema se debe a que no está desestructurando correctamente los accesorios (id, removeIndividualBook) , deberían ser ({id, removeIndividualBook}) .
Aquí está el enlace que se puede ver que funciona correctamente:
¡Espero que esto resuelva tu problema!