delete Handler for Table 2 is not working as intended

  Kiến thức lập trình

Here are all the state maintained,

  const [name, setName] = useState('');
  const [email, setEmail] = useState('');
  const [phoneno, setPhoneno] = useState('');

  const [data, setData] = useState([]);  //TABLE 1
  const [dataTwo, setDataTwo] = useState([]);  //TABLE 2

Need to create form with name, age, email with Add Button

        <form onSubmit={submitHandler}>
          <div>
            <label>Name</label>
            <input type="text" onChange={nameHandler} value={name}></input>
          </div>
          <div>
            <label>Email</label>
            <input type="email" onChange={emailHandler} value={email}></input>
          </div>
          <div>
            <label>Phone No</label>
            <input type="text" onChange={phoneHandler} value={phoneno}></input>
          </div>
          <div>
            <button type="submit">Add</button>
          </div>
        </form> 

When ADD button is pressed, data will be transferred to Table 1

Table 1 has content and DELETE button ,

   <div>
       <h2>Table 1</h2>
     </div>
     <div>
       <ul>
         {data.map((item) => (
           <div>
             <li>
               {item.name} - {item.email} - {item.phoneno}{' '}
               <button onClick={() => deleteTableOneHandler(item)}>
                 Delete
               </button>
             </li>
           </div>
         ))}
       </ul>
     </div> 

const deleteTableOneHandler = (deleteitem) => {
 setData(data.filter((item) => item !== deleteitem));
 setDataTwo((value) => [...value, deleteitem]);
};

When delete button is pressed, Data from table 1 will be added to Table 2,
And Data from table 1 is deleted

Likewise when data is deleted from Table 2, Data Will be added back to table 1

      <div>
          <h2>Table 2</h2>
        </div>
        <div>
          <ul>
            {dataTwo.map((item) => (
              <div>
                <li>
                  {item.name} - {item.email} - {item.phoneno}{' '}
                  <button onClick={() => deleteTableTwoHandler(item)}>
                    Delete
                  </button>
                </li>
              </div>
            ))}
          </ul>
        </div>

    const deleteTableTwoHandler = (deleteitem) => {
    setDataTwo(data.filter((item) => item !== deleteitem));
    setData((value) => [...value, deleteitem]);
  };

Everything is working as required, only when I delete Data from Table 2, it doesn’t
respond as intended.

LEAVE A COMMENT