본문 바로가기
개발노트/Flutter

[Flutter] Don't use BuildContexts across async gaps

by 전지적진영시점 2023. 6. 6.
반응형

개발 환경

---------------------------------

OS : Mac

개발 툴 : android studio

개발 언어 : dart

개발 프레임워크 : flutter

---------------------------------

 

에러 내용 : Don't use BuildContexts across async gaps 

 

- async를 사용하는 영역 내에서는 BuildContext를 사용하지 말라고 한다. 왜냐면 context 값이 비어있을 수도 있으니까 !

 

그래서 우리는 context가 mount 되었는지 사전에 확인하는 작업이 필요하다.

context를 객체에 전달하기 전에 아래 코드를 작성한다.

 

if (context.mounted) {

 

<전체 코드>

if (context.mounted) {
  if (response.result == 'N') {
    showDialog(
        context: context, builder: (context) {
      return AlertDialog(
        title: Text(''),
        content: Text(''),
        actions: [
          TextButton(
              onPressed: () {
                url_launcher.canLaunch(updateUrl);
              }, child: Text(''))
        ],
      );
    });
  }
}

 

 

 

반응형

댓글