개발일지/React
[React 리액트] useState
jungwonyu
2022. 8. 25. 15:00
728x90
const [state, setState] = useState(initialState);
상태 유지 값과 그 값을 갱신하는 함수를 반환합니다.
최초로 렌더링을 하는 동안, 반환된 state(state)는 첫 번째 전달된 인자(initialState)의 값과 같습니다.
setState 함수는 state를 갱신할 때 사용합니다. 새 state 값을 받아 컴포넌트 리렌더링을 큐에 등록합니다.
setState(newState);
다음 리렌더링 시에 useState를 통해 반환받은 첫 번째 값은 항상 갱신된 최신 state가 됩니다.
출처: https://ko.reactjs.org/docs/hooks-reference.html#usestate
Hooks API Reference – React
A JavaScript library for building user interfaces
ko.reactjs.org
- To Do List 만들기
const [todoList, setTodoList] = useState([]);
state: todoList
현재 상태
setState: setTodoList
갱신할 상태
useState([])
최초로 렌더링 하는 동안 첫 번째로 전달된 인자 [] <- 빈배열
todo를 전달받을 함수
function insertTodo(todo) { // todo를 전달받을 함수
todo.idx = todoList.length; // todo의 idx(인덱스)는 todoList의 길이를 저장
const newTodoList = [...todoList, todo]; // Spread Operator를 사용하여 todoList를 복사하여 새로운 todoList를 생성
setTodoList(newTodoList); // todoList를 새로운 todoList로 설정(새로운 todoList를 설정하면 새로운 todoList가 반영됨)
}