[Flutter] RiverPod - Data 상태 관리하기
·
Flutter
Onboarding 화면지난 번에는 Riverpod의 공식문서를 보며 Riverpod 예제에 대해서 공부했다.이번에는 직접 구현하면서 개인 프로젝트에 적용했다.프로젝트의 OnboardingView를 보면 아래와 같이 기획을 하였다.왼쪽은 화면(UI)이고 오른쪽은 화면은 각 위젯(widget)에 대한 기능 설명이다.시작하기 버튼은 course와 campus에 초기값이 아닌 다른 값이 들어가면 활성화되면서 색이 변경된다.Data State Management(campus)그러면 나는 저번에 배운 Data State management Tool인 Riverpod을 사용하여 Data 상태관리를 해보겠다.final campusProvider = StateNotifierProvider( (ref) => Campu..
[Flutter] Riverpod 학습 - Performing side effects & Passing arguments to your requests
·
Flutter
Performing side effects이전 글에서는 provider로 네트워크 요청 하는 방법을 학습하였다.GET HTTP 요청만 사용해서 개발을 하였는데 POST 요청과 같은 side-effect가 발생하는 경우는 어떻게 처리할지 학습해보겠습니다.일반적으로 업데이트 요청은 로컬 캐시를 업데이트 해야 한다.로컬 캐시도 업데이트하여 UI에 새 상태가 반영되도록 하는 것이 일반적이다.conusmer내에서 provider의 상태(state)를 어떻게 업데이트 할 수 있는지 알아보자.Notifier 정의하기간단한 GET API 요청을 통해 알아보자.아래 코드는 할일 목록을 가져오는 코드이다.@riverpodFuture> todoList(Ref ref) async { // 네트워크 요청을 시뮬레이션합니다. ..
[Flutter] RiverPod - provider 알아보기(with 네트워크 요청)
·
Flutter
[Flutter] RiverPod 학습지난 시간에 데이터 상태관리(Data State Management)에 대해 학습을 해봤다.선언형 UI와 명령형 UI의 차이점, Flutter에서 데이터 상태관리하는 방법, 데이터 상태 관리 도구(Data State management Tool)를 사용하는 이유 등그러면 이제 RiverPod에 대해 학습해보자.RiverPod의 공식문서를 보면 필수 사항등이 있다.첫 번째 provider/네트워크 요청 만들기부가 작업 수행(Performing side effects)요청에 인자 전달하기웹소켓 및 동기 실행요청 결합하기캐시 지우기 및 상태 폐기(disposal)에 반응하기providers의 빠른 초기화(Eager initialization)providers 테스트하기로깅..
[Flutter] RiverPod 학습 - State management
·
Flutter
RiverPod 학습 이유오늘은 개인 프로젝트에서 RiverPod을 사용하여 데이터 상태관리하는 방법을 학습하려고 한다.왜 많은 데이터 상태 관리하는 방법 중 RiverPod인가? 거창한 이유는 없다.나는 프레임워크(SwiftUI , Flutter) 개발을 하였지만 데이터 상태관리에 대한 식견이 부족하다.그래서 솔직히 다른 개발자분들이 말씀하시는 “어떤 상태관리 패키지(혹은 라이브러리)는 무엇이 좋다.” 혹은 “무엇이 별로다” 이야기는 내가 경험해봐야 이해할 수 있다고 생각한다.그리고 회사마다 자격요건에 상태관리 툴도 모두 다르다. 하지만 데이터 상태관리 툴 하나를 깊게 공부하였다면 다른 상태관리를 쉽게 학습할 수 있을 것이다.데이터 상태관리 툴RiverPod을 바로 학습하기전에 Data State To..