Redux-Persist란?

일뜻의 개발 하루·2024년 11월 4일
0

개념 원리 이해

목록 보기
4/4

이메일 인증 프로젝트를 하던 도중 redux의 스토어의 데이터를 브라우저가 종료ㅛ 되더라도 데이터를 유지할 수 있게 하는 라이브러리를 찾아야 할 이유가 있었다.

만약 Redux-persist가 없다면

  1. 로그인 상태 유지 불가(jwt 토큰이 메모리에서만 유지되어 브라우저 종료 시 로그아웃됨)
  2. 사용자 경험 저하. (매번 로그인 해야하고, 작성 중이던 데이터 손실, 설정값 초기화)

의 문제가 발생하게 된다.

이를 해결하기 위해 사용 되어야 하는것이 Redux-Persist다.

즉 Redux-Persist는 Redux 스토어의 데이터를 브라우저의 로컬 스토리지나 세션 스토리지에 저장하여 페이지 새로고침이나 브라우저 종료 후에도 데이터를 유지할 수 있게 해주는 라이브러리다.

주요 특징과 장점

  1. 데이터 영속성
    앱을 종료하거나 새로고침해도 Redux 스토어의 상태가 유지됨
    사용자 로그인 정보, 장바구니 데이터 등을 보존 가능

  2. 설정의 유연성
    저장소 선택 가능 (localStorage, sessionStorage 등)
    특정 reducer만 선택적으로 저장 가능
    데이터 변환 및 필터링 기능 제공

등이 있으며 다크모드/라이트 모드 같은 테마 설정을 저장할 수 있고, 언어 설정, 사용자 기본 설정 등 유지에 적합하다. 또한 장바구니 기능으로도 사용이 가능하다!

주의사항

1.성능 고려
너무 많은 데이터를 저장하면 앱 로딩 시간 증가
필요한 데이터만 선택적으로 저장
2. 보안
민감한 정보는 저장 전 암호화 필요
토큰 등 보안 데이터는 주의해서 관리
3. 버전 관리
앱 업데이트 시 저장된 데이터 구조 변경 고려
마이그레이션 전략 수립 필요

여기서 마이그레이션 전략이란

데이터 구조나 앱의 상태가 변경될 때 기존 데이터를 새로운 구조로 안전하게 전환하는 계획을 의미한다.

이러한 마이그레이션 전략은 앱이 업데이트 되더라도 사용자의 데이터가 안전하게 유지되도록 보장한다!

0개의 댓글