{todos.map((todo, index) => {
return <li key={index}>{todo}
<button onClick={() => deleteTodo(index)}>✖︎</button></li>
})}
こちらはこれでも合ってますし、
{todos.map((todo, index) => <li key={index}>{todo}
<button onClick={() => deleteTodo(index)}>✖︎</button></li>
)}
こちらのほうがシンプルです。
const addTodo = () => {
setTodos([...todos, tmpTodo]);
setTmpTodo("");
//delete関数をconstで作成
const deleteTodo = () => {
<ul>
{arr.map((index, i) => <li key={i}>{index}</li>)};
</ul>
console.log(todos);
};
};
addTodoの中にdeleteTodoが入ってしまっているのでエラーになっています。
const addTodo = () => {
setTodos([...todos, tmpTodo]);
setTmpTodo("");
};
const deleteTodo = (index) => {
// console.log("deleteTodo index:" + index)
// TODO 実装
// setTodos(削除後の配列)
};
このようにそろえてみてください。
また、deleteTodoの中身は、jsxではなくaddTodoと同様にsetTodoを行います。
Like!