인프런 커뮤니티 질문&답변

ldsik03님의 프로필 이미지
ldsik03

작성한 질문수

[코드팩토리] [중급] Flutter 진짜 실전! 상태관리, 캐시관리, Code Generation, GoRouter, 인증로직 등 중수가 되기 위한 필수 스킬들!

Restaurant Pagination 요청해보기

유저정보 화면을 만들때의 Provider 사용 문의 드립니다.

작성

·

276

·

수정됨

0

선생님한테 배운것을 응용하려는데 쉽지 않습니다.

userMeProvider의 getMe()함수가 유저 정보를 가져오는 함수라서 이 함수를 이용해 유저정보화면을 만들려고 하는데

많은 시행착오를 거친후 제가 할수 있는것은 FutureBuider를 이용하여 future 함수에다 ref.read(userMeProvider.notifier).getMe() 를 넣으니까 화면에 뿌릴수는 있게 되었습니다.

 

그런데 FutureBuider를 쓰는것은 왠지 선생님의 가르침에 역행하는것 같아서 문의 드립니다.

유저프로필 화면에 Provider를 이용하여 데이터를 보여주는 가장 좋은방법은 무엇인지 궁금합니다.

repository 나 provider 는 일반 프로그래밍 같아서 잘 이해가 되는데 이것을 화면에 뿌리는것이 너무 낯선 개념으로 다가와서 애를 먹고 있습니다.ㅠㅠ

 

감사합니다.

답변 1

0

코드팩토리님의 프로필 이미지
코드팩토리
지식공유자

안녕하세요!

사용자 정보를 가져오는것도 다른 Provider들과 다르지 않습니다.

ref.watch()를 이용해서 build 함수 내부에서 상태의 변화를 감지해야합니다.

그렇다면 ref.read().getMe() 함수의경우 사용자 정보를 가져오고 바라보고있는 상태를 업데이트하는 함수가 되겠습니다.

말씀하신대로 ref.read()를 이용해서 반환값을 FutureBuilder로 보여주면 Riverpod의 장점을 이용하지 못하게 됩니다.

저희가 레스토랑 정보나 메뉴 정보를 어떻게 가져왔는지 다시한번 확인해보세요.

감사합니다!

ldsik03님의 프로필 이미지
ldsik03

작성한 질문수

질문하기