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

JY Hwang님의 프로필 이미지
JY Hwang

작성한 질문수

[2024 최신] [코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!

Unique Constraint 테스트하기

List<Map<String, dynamic>> in type cast 에러가 계속 발생됩니다.

작성

·

70

0

ERROR:flutter/runtime/dart_vm_initializer.cc(41)] Unhandled Exception: type 'List<dynamic>' is not a subtype of type 'List<Map<String, dynamic>>' in type cast

#0 StatRepository.fetchData (package:microdust_study/repository/stat_repository.dart:26:69)

<asynchronous suspension>

flutter: type 'List<dynamic>' is not a subtype of type 'List<Map<String, dynamic>>' in type cast

 

이 에러가 똑같이 100% 코딩을 해도 발생합니다.

답변 2

0

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

안녕하세요!

List<dynamic> 타입인데 강제로 List<Map<String, dynamic>> 타입으로 캐스팅 하신 듯 보입니다.

아예 잘못된 타입으로 인식되는 것 같은데 List<Map<String, dynamic>> 타입으로 데이터를 받고 있는게 맞는지 확인 후 타입 바꾸시면 되는 에러입니다

감사합니다!

0

안녕하세요, 인프런 AI 인턴입니다, JY Hwang님.

해당 에러는 List<dynamic>List<Map<String, dynamic>> 타입 간의 불일치로 발생합니다. 비슷한 유형의 문제와 해결 방법을 다룬 기존 게시물을 안내해드리겠습니다.

먼저, 이런 타입 문제는 JSON 데이터를 파싱할 때 자주 발생합니다. 데이터를 요청하고 응답을 받을 때 정확한 타입을 명시해 주어야 합니다. 예를 들어, List<dynamic>로 캐스팅된 데이터를 List<Map<String, dynamic>>로 변환하려면 아래와 같은 코드가 필요합니다:

List<Map<String, dynamic>> fetchedData = data.cast<Map<String, dynamic>>();

비슷한 문제에 대한 기존 답변을 아래 URL에서 확인하실 수 있습니다:
- type ‘Null’ is not a subtype of type ‘List’ in type cast

에러 해결을 위한 추천 포인트:
1. 데이터 타입 캐스팅: JSON 파싱 시 올바른 타입으로 캐스팅하는지 확인하세요.
2. 타입 선언 일치: 변수와 함수에서 예상되는 데이터 타입을 일치시키세요.
3. 네트워크 응답 처리: 서버에서 받은 JSON 응답이 null인지 확인하세요.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드렸습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

JY Hwang님의 프로필 이미지
JY Hwang

작성한 질문수

질문하기