강의

멘토링

로드맵

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

이순곤님의 프로필 이미지
이순곤

작성한 질문수

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

Rating Pagination

riverpod2.0으로 common의PaginationProvider만들기

작성

·

243

1

@Riverpod(
  keepAlive: true,
)
class PaginationNofifier<T extends IModelWithId,
U extends IBasePaginationRepository<T>>
    extends _$PaginationNofifier {

  final U repository;

  PaginationNofifier({
    required this.repository,
  });

  @override
  CursorPaginationBase build() {
    final state = CursorPaginationLoading();
    paginate();
    return state;
  }

codegenertator를 이용해서 PaginationProvider만들고 있는데 초기값은 build에서 설정은 했는데 repository를 생성자로 해서 받을려고 하는데 아래처럼 생성자 정의를 해도 에러가 나네요.

The class PaginationNofifier must have a default constructor.

다른 곳에서 비슷한 사례를 찾아봐도 기본 인스턴스 프로퍼티 자체를 받는 에제가 없어서 질문드립니다

퀴즈

RatingCard UI는 주로 어떤 부분으로 나뉘나요?

헤더, 본문, 푸터

위, 중간, 아래

헤더, 본문, 이미지

제목, 내용, 푸터

답변 2

0

이순곤님의 프로필 이미지
이순곤
질문자

감사합니다.
3시간정도 도큐멘트 찾아보면서 해봐도 이건 방법이 없어서 여쭤봤는데 아직 안된다고 하시니 오히려 포기할수있어서 마음이 편하네요 ㅎㅎ

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

아직이라기보단 제 생각엔 앞으로도 안될걸로 생각됩니다. 제가 생각하는 상태관리의 편의성과 riverpod이 생각하는 상태관리가 가야할 방향은 조금 거리가 생긴 것 같습니다.

0

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

안녕하세요!

모든 코드는 한번씩 추상화를 할때마다 자유도를 조금씩 포기합니다.

이 강의를 제작할때 code generation이 있었음에도 저는 사용하지 않았던 이유가 제가 추구하는 스타일과는 맞지 않기 때문입니다.

code generation을 꼭 사용해야만 하는건 아닙니다. 업그레이드의 개념이 아니라 내가 하려는 작업을 code generation이 해결해주고 있다면 사용했을때 유용한 요소라고 볼 수 있습니다. (중복을 없애주기 때문에).

제가 아는 선에선 제가 강의에서 구현하는 상속 스타일을 code generation으로 재현하는 방법은 없는걸로 알고있습니다.

감사합니다!

이순곤님의 프로필 이미지
이순곤

작성한 질문수

질문하기