본문 바로가기
프로그래밍

[Flutter] extension 사용하기 (확장 함수)

by hansoo.labs 한수댁 2020. 7. 18.

Using extention methods in flutter

플러터에서 extension 함수를 사용하려면 다트 2.7 이상이 필요하다.

pubspec.yaml 파일

# 확장 함수는 다트 2.7 부터 정식 포함
environment:
  sdk: ">=2.7.0 <3.0.0"

확장함수 정의

기존 클래스에 함수를 추가할 수 있는데, 특히 enum 과 같이 사용하면 편하다.

enum Payment { cash, card }

// Payment 열거형에 함수 추가
extension PaymentToName on Payment {
  String name() {
    switch (this) {
      case Payment.card:
        return "카드";
      case Payment.cash:
        return "현금";
      default:
        return "";
    }
  }
}

위 코드에서 'PaymentToName' 는 확장 함수의 이름으로 임의로 작성하면 된다.
확장 함수의 이름을 적지 않아도 되는데, 그러면 다른 파일에서 사용할 수 없다.

확장함수 사용

print(Payment.card.name()); // 카드

댓글0