본문 바로가기

Flutter-플러터/플러터 공부

Flutter : didchangeDependencies

반응형

Working with didChangeDependencies() in Flutter - Kindacode

 

Working with didChangeDependencies() in Flutter - Kindacode

In Flutter, didChangeDependencies() is called only a few moments after the state loads its dependencies. With this method, we can use context outside of

www.kindacode.com

 

꿈을이루다 스터디에서 위 내용이 나와서 공부를 해봤다. 

 

 

didchangeDependencies ()는 Stateful 위젯의 생명주기에서  initSate( ) 다음으로 실행이 된다. 

 

context를 intState(), build 안에서 사용이 어려울 때 didchangeDependencies가 사용된다.

 

 

해당 사례가 있다. 

 

initState에 MediaQuery.of(context) 함수를 사용했지만  initState가 context 보다 우선적으로 빌드가 되어서

에러가 발생하게 된다. 그럴 때 didchangeDependencies를 사용한다. 

플러터(Flutter) - initState에서 context(BuildContext) 사용하기 : 네이버 블로그 (naver.com)

 

플러터(Flutter) - initState에서 context(BuildContext) 사용하기

아래와 같이 화면 크기를 얻기 위해 initState 함수에 MediaQuery를 이용해 출력을 해봤다. 그럼 다음과...

blog.naver.com

 

 

 

그리고  InheritedWidget 에 의존하는 경우 업데이트를 한다. 

build 는 항상 didChangeDependencies 호출 후에 실행이 된다. 잘 사용하지 않지만 BuildContext.inheritFromWidgetOfExactType 을 호출하기 위해서 첫단계 시작점이다.

이건 데이터를 상속받는 위젯의 변경사항을 리스닝 하게 만든다.

이 함수는 상속된 위젯이 업데이트를 하는 경우 당신이 네트워크 호출이라던가 그런 코스트가 많이 드는 액션을 할 때 유용하다.

 

아래 페이지에서 참고했다.

[Flutter] Stateful Widget Lifecycle :: 올해는 머신러닝이다. (tistory.com)

 

[Flutter] Stateful Widget Lifecycle

Stateful Widget Lifecyclehttps://flutterbyexample.com/stateful-widget-lifecycle/#6-didupdatewidget 을 공부해서 요약한 글입니다. 자세한 내용은 원문확인 부탁드립니다.StatefulWidget을 만들때 State 라는 오브젝트를 만든

javaexpert.tistory.com


더 딥한 내용은 아래 스택오브플로우에 있다. 

 

flutter - What is the difference between didChangeDependencies and initState? - Stack Overflow

 

What is the difference between didChangeDependencies and initState?

I am new to flutter and when I want to call my context in InitState it throws an error : which is about BuildContext.inheritFromWidgetOfExactType but then I use didChangeDependencies and it works

stackoverflow.com


 

728x90
반응형