[flutter] 플러터의 useContext 훅(hook)을 사용한 상태 공유
플러터(Flutter) 앱을 개발하다 보면 여러 위젯 사이에서 상태를 공유해야 할 때가 있습니다. 예를 들어, 하위 위젯에서 사용자 인터페이스 상태를 업데이트하고, 이를 상위 위젯에서도 함께 사용해야 하는 상황이 발생할 수 있습니다. 이러한 경우, useContext
훅을 사용하여 상태 공유를 쉽게 구현할 수 있습니다.
useContext 훅 소개
useContext
훅은 플러터 훅(Flutter Hook) 라이브러리를 통해 제공되는 강력한 기능으로, 위젯 트리 전체에서 공유되는 상태를 관리할 수 있게 해줍니다. 이를 통해 상태를 명시적으로 전달하지 않고, 위젯 사이에서 편리하게 상태를 공유할 수 있습니다.
useContext 훅 사용하기
useContext
훅을 사용하기 위해서는 먼저 flutter_hooks
라이브러리를 프로젝트에 추가해야 합니다. 이후, 아래와 같이 useContext
훅을 활용하여 상태를 공유할 수 있습니다.
import 'package:flutter_hooks/flutter_hooks.dart';
Widget myWidget() {
final sharedState = useContext();
// 상태 공유
return Container(
child: Text(sharedState.value),
);
}
위의 예시에서는 useContext
훅을 통해 sharedState
라는 상태를 얻어와서 해당 상태를 위에서 아래로 전파하는 방식으로 상태 공유를 구현하고 있습니다.
요약
위의 예시에서 확인할 수 있듯이, useContext
훅을 사용하면 복잡한 상태 공유 문제를 해결할 수 있으며, 효율적인 상태 관리를 가능하게 해줍니다. 플러터 앱을 개발할 때, 위젯 사이의 상태 공유를 간편하게 해결하기 위해 useContext
훅을 적극적으로 활용해 보세요.