728x90
반응형
SMALL
안녕하세요! 프뚜입니다.
get_it에 대해 포스팅합니다.
OS: Windows 10
Dart: Dart SDK version: 3.0.6 (stable) (Tue Jul 11 18:49:07 2023 +0000) on "windows_x64"
Flutter: Flutter 3.10.6
# get_it 연동하기
flutter pub add get_it
프로젝트에서 위 명령어를 실행합니다.
# get_it에 등록 할 repository 생성하기
import 'package:johdaetgoo_flutter/main.dart';
abstract class SubscriberRepository {
Object load();
}
class SubscriberRepositoryImpl extends SubscriberRepository {
@override
Object load() async {
logger.d('load');
}
}
get_it에 사용 할 레포지토리를 생성합니다.
# get_it 세팅 및 등록하기
import 'package:get_it/get_it.dart';
import 'package:johdaetgoo_flutter/pages/subscriber/repositories/subscriber_repository.dart';
final sl = GetIt.instance;
class ServiceLocator {
static void init() {
// 2023.08.25[holywater]: 싱글톤 Repository 연결
sl.registerLazySingleton<SubscriberRepository>(() => SubscriberRepositoryImpl());
// 2023.08.25[holywater]: Bloc 연결(다음 포스팅에 사용됨)
// sl.registerFactory(() => SubsriberBloc(sl()));
}
}
생성한 레포지토리를 get_it에 등록합니다.
void main() async {
...
// 2023.08.25[프뚜]: 싱글톤(repository) 연결
ServiceLocator.init();
...
}
main.dart 파일의 main 함수에 init을 추가합니다.
Java의 싱글톤처럼 레포지토리를 등록하고 GetIt을 통해 사용할 수 있습니다.
728x90
반응형
LIST
'프로그램 > FLUTTER' 카테고리의 다른 글
[Flutter] 플러터 go_router 세팅 및 설정하기 (0) | 2023.09.06 |
---|---|
[Flutter] 플러터 bloc 설정 및 사용하기 (0) | 2023.09.05 |
[Flutter] 플러터 freezed 설정 및 사용하기 (0) | 2023.09.01 |
[Flutter] 플러터 Hive 설정 및 사용하기 (0) | 2023.08.31 |
[Flutter] 플러터 Logger 로그 예쁘게 보기 (0) | 2023.08.30 |