Dart How to get the “value” of an enum

后端 未结 15 1980
野的像风
野的像风 2020-12-29 00:50

Before enums were available in Dart I wrote some cumbersome and hard to maintain code to simulate enums and now want to simplify it. I need to get the value of the enum as

15条回答
  •  天涯浪人
    2020-12-29 01:18

    This is your enum:

    enum Day {
      monday,
      tuesday,
    }
    

    Create an extension (may need to import 'package:flutter/foundation.dart';)

    extension DayEx on Day {
      String get inString => describeEnum(this);
    }
    

    Usage:

    void main() {
      Day monday = Day.monday;
      String inString = monday.inString; // 'monday'
    }
    

提交回复
热议问题