-
카테고리
-
세부 분야
모바일 앱 개발
-
해결 여부
미해결
GlobalKey를 이용한 StatefulWidget의 상호 연결
20.03.30 23:38 작성 조회수 203
0
안녕하세요.
Flutter도 widget tree를 구성하여 하나의 앱 시스템을 구축하는데요.
예를 들어 3개의 StateFulWidget A, B, C가 있다고 가정하면 서로 필요한 함수 및 변수를 조작하기 위햐서
GlobalKey를 사용하고 있고 구동도 잘됩니다.
GlobalKey를 static 으로 선언하고
필요한 곳에서 (특정 위젯의 )globalkey.currentState.doSomeThing(); 이런식으로 사용합니다.
하지만 로그를 보면 'Multiple widgets use same Globalkey' 라고 빨간색으로 경고 표시가 나오네요.
구동은 이상없이 잘되는데요. 무시하고 이런방식으로 구현을 해도 되는건가요?
답변을 작성해보세요.
0
오준석
지식공유자2020.03.31
static을 사용한 방법은 좋은 방법이 아닌 듯 합니다.
이런 때야 말로 Provider를 활용하시면 됩니다.
여기 저기서 공용으로 사용되는 변수나 함수를 포함하는 클래스 객체를 Provider를 통해서 각 화면에 제공하면 간단히 해결될 것으로 보입니다.
답변 1