개발/react
react에서 to-do-list 만들기는 바닐라 js에 비해 너무 쉬움!!
발명가H
2022. 9. 26. 23:36
toDos를 가져온 다음에
map 함수를 이용해서 하나씩 뽑아서 li에 넣어주기만 하면 됨!!
li 마다 index가 필요하기 때문에 li의 key로 index 하나 넣어주고
{toDos.map((toDo, index)=> <li key={index}>{toDo}</li>)}
결론적으로 전체 코드
import { useEffect, useState } from "react";
function App() {
const [toDo, setToDo] = useState("")
const [toDos, setToDos] = useState([])
const onChange = (event) => setToDo(event.target.value)
const onSubmit = (event) => {
event.preventDefault()
if (toDo === "") {
return;
}
setToDo("")
setToDos((currentArray) => [toDo, ...currentArray])
}
console.log(toDos)
return (
<div>
<h1>My To Dos ({toDos.length})</h1>
<form onSubmit = {onSubmit}>
<input value = {toDo} onChange = {onChange} type = "text" placeholder = "Write your to do..." />
<button>Add To Do</button>
</form>
<hr />
{toDos.map((toDo, index)=> <li key={index}>{toDo}</li>)}
</div>
);
}
export default App;