1. main.dart

Juyeon💕·2021년 5월 26일
0

flutter

목록 보기
4/14

import 'dart:async';

import 'package:flutter/material.dart';
import 'package:flutter/services.dart';
import 'package:get_it/get_it.dart';
import 'package:herolawwebpage_1/app.dart';

import 'package:herolawwebpage_1/main_navigaotor.dart';
import 'package:intl/intl.dart';

import 'app_config.dart';

final gi = GetIt.instance;

Future main() async {

AppConfig();

Intl.defaultLocale = 'ko_KR';

SystemChrome.setSystemUIOverlayStyle(SystemUiOverlayStyle(
));

gi.registerLazySingleton(() => MainNavigator());

runZoned(() {
runApp(App());
});
}

GetIt.instance :
get it package는 간단한 service locator이다.

특징

  • global locator를 사용하여 어디에서든 type을 요청가능하다.
  • 위젯을 포장하거나 context가 없어도 사용가능하다.
  • 인스턴트 추적(instance tracking)은 Factories or Singleton를 통해 자동으로 처리된다.
  • flutter의 프로모션과 달리 다방향 데이터 흐름인 전역 객체 사용한다.
    final gi 안에 get instance를 저장하고 해당 파일을 import한 어디에서든 전역적으로 접근가능하도록 한다.

runZoned : Flutter - Zone이란? 프로그램 종료되지 않게 예외처리 하기.
zone은 프로그램이 예상치 못한 에러로부터 종료하는 걸 막을 때 쓰입니다. 일반적인 상황이면 프로그램이 종료되는 경우더라도 zone(존)을 쓰면 잘 돌아가게 되는 거죠.

profile
내가 보려고 정리하는 velog

0개의 댓글