flutter enum 업데이트

ENOOSOFT·2022년 6월 25일
0

dart 2.17.0 발표중 가장 반가운 소식입니다.
우리 dart enum 이 달라졌어요.
더이상 enum 속성을 사용할때 extension을 사용하지 않아도 됩니다.
(extension 다시 부를때까지 안녕...)

먼저 프로젝트의 pubspect.yaml 파일에서 dart 버전을 확인하여 2.17.0 이상으로 맞춰줍니다.

environment:
  sdk: ">=2.17.1 <3.0.0"

그런 다음 아래와 같은 형태로 enum class 를 만들고,

enum EnmSize {
  fontVerySmall(12),
  fontSmall(13),
  fontLittleSmall(14),
  fontNormal(16),
  fontLittleLarge(18),
  fontLarge(18);

  final double size;
  const EnmSize(this.size);
}

위젯이나 어디서든 compile time에 아래와 같이 편리하게 불러서 쓸 수 있습니다.

double get fontSizeVerySmall => EnmSize.fontVerySmall.size * sizeFactor;

double get fontSizeSmall => EnmSize.fontSmall.size * sizeFactor;

순서가 있는 경우에는 loop 도 가능해서 table column ui 속성을 enum 으로 정의하면 편리합니다. Java 등 다른 언어들에서는 진즉에 지원하던 편리한 기능을 드디어 만들었네요.

enum 많이 쓰세요.

profile
Tiny coder

0개의 댓글