Flutter/Get X

[Flutter / 플러터] Get X 란? (라우터 기능)

부에나온다 2022. 4. 25. 15:50

1. GetX

 - Flutter 개발을 위한 매우 가볍고 강력한 라이브러리(미니 프레임워크 수준)

 - 3가지 기본 원칙

    - 생산성

    - 성능

    - 조직화

  - GetX 사용을 위한 셋팅

pubspec.yaml

void main() {
  runApp(GetMaterialApp(
    initialRoute: '/home',
    getPages: [
      GetPage(name: '/home', page: () => First(), binding: SampleBind()),
    ],
  ));
}

- 기본 페이지 라우팅 ( 기존 Navigator 와 GetX route 차이 )

일반적인 라우팅 방식
GetX의 라우팅 방식
GetX의 경우 콘솔로 상태 로그도 남겨준다.
Get.back으로 뒤로가기, Get.offAll 을 통해서 라우트 히스토리를 지우고 뒤로이동

- Named 라우트 방식

기존 네임드 라우트 방식
기존 네임드 라우트 방식
GetX 네임드 라우트방식
GetX 네임드 라우트방식
offNamed를 사용할 경우 뒤로가기 버튼시 홈으로 이동

3. 라우팅 Argument 전달

메인에 페이지 선언을 해준다.
페이지 이동 시 Argument를 전달 할수 있다.

 - Argument 는 객체(Class), Map, String, Int 등 다양한 형태로 전달이 가능하다.

next페이지에서 Arugment를 전달받아 사용하는 과정

4. 라우팅 동적 URL(Parameter 전달)

 - 라우팅을 할때 URL 과 비슷하게 동적으로 파라미터 값을 전달 받을수가 있다.

메인에서 페이지를 name 과 동일하게 선언을 해주고 받을 파라미터 키값을  :uid 와 같이 선언해준다.
페이지 이동시 파라미터를 선언해주고 전달

 

페이지에서 파라미터를 전달받아 사용하는 과정

 

느낀점

- 현재까지 GetX의 라우터 관리 기능을 살펴보았다.

   아직 주니어 단계이지만 조금만 배워봐도 편리한 점을 느낄수가 있어다.

   좀더 로직이 클린해지고, 직관성있게 변하는거 같아 신선함을 느낄수 있었다. 다음 프로젝트에 적용해보면서 좀 더 다뤄보도록 해야겠다.