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

양용찬님의 프로필 이미지
양용찬

작성한 질문수

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

Many to One Relationship 생성 및 가져오기

LateInitializationError 발생

작성

·

50

0

selectedColorId가 null일 때 빈 컨테이너를 반환하는 코드를 작성했음에도 불구하고 다음과 같은 에러가 발생합니다(동작은 정상적으로 되긴 합니다).
LateInitializationError: Field 'selectedColorId' has not been initialized.

 

답변 1

0

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

안녕하세요!

late 키워드 사용시 initialize 전에 액세스를 하려고 하면 에러 나는게 정상입니다.

빈 컨테이너를 반환할때 boolean 체크를 하셨다면 어쨋든 액세스를 했다는 뜻이기 때문에 에러가 날 수 있습니다.

nullable로 만드실거라면 late 키워드를 사용 안하는게 맞지 않을까요?

감사합니다!

양용찬님의 프로필 이미지
양용찬
질문자

코드팩토리님의 코드랑 동일한데, 코드팩토리님이 실행했을 때는 콘솔에 그런 에러가 안 뜨는 것 같아서 질문드렸습니다!

(schedule_bottom_sheet.dart에 있는 코드입니다)

initState 안에서 초기화를 해주는데도 에러가 나는 이유가 궁금합니다...


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

안녕하세요!

이유는 말씀 드린대로 초기화 되기 전에 먼저 접근 했기 때문입니다!

예제 코드를 보여주시면 확인해볼게요.

코드가 다르거나 초기화 전 해당 값을 접근하는 방식으로 변수를 접근 하신걸로 생각됩니다.

감사합니다!

양용찬님의 프로필 이미지
양용찬

작성한 질문수

질문하기