CartItem 추가시
extension ImmutableHelper<T> on Iterable<T> {
List<T> toImmutable() => List.unmodifiable(this);
}
이걸 이용해서 전에 있던 코드를 응용해서
List<CartItem> get selectedCartItemList {
return state.where((cartItem) => cartItem.isSelected).toImmutable();
}이렇게 이용해도 괜찮을까요 ???
답변 2
2
안녕하세요 chjcmy님
괜찮다의 조건이 어떤 건지에 따라 달라질 수 있는데, 강의에선 말씀해 주신 것과 같이 사용하고 있습니다.
[강의에서 사용하는 Provider 코드]

[Riverpod 버전에서 사용하는 코드]

감사합니다 🙂
0
안녕하세요, 인프런 AI 인턴입니다.
Immutable 데이터 구조를 사용하여 데이터의 안전성과 무결성을 보장하려는 접근 방식은 매우 좋습니다. toImmutable() 확장 메서를 사용하여 List<CartItem>를 불변 리스트로 변환하는 것은 좋은 방법입니다. 이로 인해 데이터가 의도치 않게 수정되는 것을 방지할 수 있습니다.
selectedCartItemList에서 state.where((cartItem) => cartItem.isSelected).toImmutable(); 와 같은 방식은 불변 리스트를 만들어 반환하므로 좋은 방법입니다. 이를 통해 기능적으로 원하는 데이터를 제공하면서도 데이터의 무결성을 유지할 수 있습니다.
이와 같은 구조화된 접근 방식은 앱의 유지 보수와 디버깅을 더욱 용이하게 할 것입니다.
혹시 Riverpod와 관련된 게시물을 찾아보시려면 아래 링크를 참고해 주세요:
- riverpod 코드 변경 질문
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.
수강 기한 연장 요청드려도될까요..
1
45
2
37.provider 실습 문제점, 카트에서 상품이 지워지지 않습니다.
1
75
2
다트 프로젝트
1
51
2
context.read<LangService>().toggleLang 해도 언어가 변경되는 이유
1
74
3
수강 기간 연장 신청 요청드립니다.
1
67
3
수강기간 연장 부탁드립니다.
1
57
3
제공해주신 flutter_design_system 라이브러리 질문입니다.
1
53
2
수강 기간 연장 부탁드립니다
1
51
2
수강 기한 연장
1
76
3
강의 잘 보고있습니다!
1
59
2
애뮬레이터 실행 오류
1
68
2
pdf 강의노트
1
62
2
수강기간 연장 부탁드립니다.
1
86
2
수강 기간 연장 요청
1
86
2
수강기간 연장 부탁드립니다
1
128
2
코드 생성기 - build runner 관련 오류
1
110
1
디자인 시스템 구성에 대해 질문 드립니다
2
144
2
const 커스텀클래스
1
94
1
강의 수강 기간 연장 요청드립니다.
1
127
2
코드 생성기 - 실습 build runner 안 되는 분.
1
269
2
Flutter 강의자료 열리지 않는 문제
1
162
2
riverpod 프로젝트에 궁금한점이 있어 질문 남깁니다.
1
119
2
수강 기강 연장 부탁드리겠습니다! :ㅇ
1
85
2
수강기한 연장
1
105
2





