본문 바로가기
Flutter/Flutter FAQ

Flutter 인스턴스 멤버 'params'는 이니셜라이저에서 접근할 수 없습니다., The instance member 'params' can't be accessed in an initializer

by 베타코드 2023. 8. 12.
반응형

질문


class LevelUp extends GetxController {
  Map<String, String> params = Get.arguments;

  var myTest = params.[comLevel];
}

오류 보고 - "인스턴스 멤버 'params'는 초기화 프로그램에서 액세스할 수 없습니다."

저는 프로그래밍을 처음 시작했고 이것은 위젯에서 직접 호출되고 있습니다. LevelUp 맵을 확인했을 때 내용이 있습니다. 오류는 param 값을 myTest에 할당하려고 할 때 발생합니다. 키를 따옴표로 감싸거나 정수를 제공하더라도 상관없습니다.


답변


당신은 객체를 초기화하기 전에 params에 접근할 수 없습니다. 예제를 수정하려면 myTest 초기화를 생성자로 이동하세요.

또한, [comLevel] 앞에는 점이 있어서는 안된다고 생각합니다.

class LevelUp extends GetxController {
  Map<String, String> params = Get.arguments;
  String myTest;
  
  LevelUp() {
    myTest = params[comLevel];
  }
}
반응형

댓글