inputValue
is an array of objects that I want to remove from the element that I click its deleting button. element
declared with useState, and passed as a prop after. I used indexOf
to navigate its place and remove it with splice, but instead it removing all of the elements except the first one, it ... ?
import React from "react";
function Todo({ element, inputValue, setInputValue }) {
const deleteHandler = () => {
setInputValue(inputValue.splice(inputValue.indexOf(element), 1));
console.log(inputValue.indexOf(element));
console.log(element.id);
};
const completeHandler = () => {
console.log(element.id);
console.log(inputValue.indexOf(element));
};
return (
<div className="todo">
{element.text}{" "}
<div>
<button onClick={deleteHandler}>delete</button>{" "}
<button onClick={completeHandler}>complete?</button>
</div>
</div>
);
}
export default Todo;