Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

138
Views
How can I solve - Uncaught TypeError: removeIndividualBook is not a function?

I have removeIndividualBook in index.js which removes individual book. This functionality was working fine from Book component.

I am creating new component Quantity and trying to access removeIndividualBook there. I am passing removeIndividualBook as prop from index.js to Book.js to Quantity.js.

In Quantity.js I am getting Uncaught TypeError: removeIndividualBook is not a function

index.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>

Book.js

const Book = ({description,id,removeIndividualBook}) => {
  const clickHandler = () => {
    alert(description);
  };
      <Quantity id={id} removeIndividualBook={removeIndividualBook} />

Quantity.js

const Quantity = (id, removeIndividualBook) => {const Quantity = (id, removeIndividualBook) => {}


return (
    <>
      <button
        className="button" onClick={() => removeIndividualBook(id)}> ------>>> Error
about 4 years ago · Juan Pablo Isaza
2 answers
Answer question

0

As I can see in your Quantity.js component, your syntax is not good. It should be

const Quantity = ({id, removeIndividualBook}) => {

return (
    <>
      <button
        className="button" onClick={() => removeIndividualBook(id)}>
...
)

the props should be wrapped in { } (destructed). I think that is the problem you are providing.

about 4 years ago · Juan Pablo Isaza Report

0

I reproduced somehow your components with a code snippet.

I think your problem is because you are not destructuring props correctly, (id, removeIndividualBook), they should be ({id, removeIndividualBook}).

Here is the link that you can see that it works properly:

Code Snippet Link

Hope this solves your issue!

about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!