티스토리 뷰

6주차는 상태관리에 배우는 시간이었다.

상태관리 라이브러리 중 리덕스가 있다.

리덕스는 애플리케이션의 상태를 중앙 집중식 스토어에서 관리할 수 있어, 다양한 컴포넌트 간에 상태를 일관되게 공유하고 관리할 수 있다.

 

<덧셈, 뺄셈 예제 코드>

import { createStore } from 'redux';

// 리듀서 함수 정의
function counter(state = 0, action) {
  switch (action.type) {
    case 'INCREMENT':
      return state + 1;
    case 'DECREMENT':
      return state - 1;
    default:
      return state;
  }
}

// 스토어 생성
const store = createStore(counter);

// 현재 상태 출력
console.log(store.getState()); // 0

// 상태가 변경될 때마다 실행될 함수 등록
const unsubscribe = store.subscribe(() => console.log(store.getState()));

// 액션 디스패치
store.dispatch({ type: 'INCREMENT' }); // 1
store.dispatch({ type: 'INCREMENT' }); // 2
store.dispatch({ type: 'DECREMENT' }); // 1

// 이벤트 리스너 제거
unsubscribe();

 

상태관리와 함께 테스트 코드를 어떻게 작성해야 유지보수에 도움이 되는지도 배웠으나 아직까지 내가 편하게 쓰기엔 어려움이 있다.

 

정말 틈틈이 여러 번 사용해보는 수 밖에 없을듯 하다.

 

어려울 수록 여러 번 두드려야 뭐든 될 거 같다.

반응형
LIST
댓글
링크
공지사항
최근에 올라온 글