flutter_gen

2달 전   •   2 min read

By UNIQMUZ

Flutter를 사용하면서 불편함이 해소 되었던 패키지 들을 소개해 보고자 합니다.

Flutter의 기본 적인 내용(설치 방법 등)은 생략 합니다.

flutter_gen | Dart package
The Flutter code generator for your assets, fonts, colors, … — Get rid of all String-based APIs.

기존 Flutter의 리소스 호출 방식은 다음과 같습니다.

# 등록
# pubspec.yaml
flutter:
  assets:
    - assets/images/profile.jpg
// 사용
Widget build(BuildContext context) {
  return Image.asset('assets/images/profile.jpeg');
}

아무래도 String type으로 리소스를 호출하다 보니 다양한 문제점이 할생 할 수 있습니다.

flutter_gen을 사용하게 되면 리소스를 클래스처럼 접근할 수 있도록 도와주기 때문에, 편하게 개발을 할 수 있습니다.

// flutter_gen 적용 후
Widget build(BuildContext context) {
  return Assets.images.profile.image();
}

단지 flutter_gen은 codegen 방식으로 리소스를 확인하여 내부적으로 자동으로 클래스를 생성해주는 방식이기 때문에, 사용하기 이전에 build_runner같은 툴을 사용하여 코드를 생성해 주어야 합니다.

> dart run build_runner build

이외 lottie, flutter_svg같은 리소스를 다루는 라이브러리를 함께 포함하여 사용할 수 있기때문에, 진행하시는 프로젝트에 맞제 pubspec.yaml에서 조정하여 사용하시면 됩니다.

# pubspec.yaml
# ...

flutter_gen:
  output: lib/gen/ # Optional (default: lib/gen/)
  line_length: 80 # Optional (default: 80)

  # Optional
  integrations:
    flutter_svg: true
    flare_flutter: true
    rive: true
    lottie: true

  colors:
    inputs:
      - assets/color/colors.xml

Spread the word

Keep reading