为飞镖中的多个枚举应用相同的扩展名
Apply same extension for multiple enums in dart
是否可以将相同的 dart 扩展应用于多个枚举?这是我的枚举和扩展。
enum Currency {
EUR, INR, USD, CNY, JPY, GBP
}
extension ParseToString on Currency {
String toShortString() {
return this.toString().split('.').last;
}
}
能不能做成这样
enum InvoiceStatus {
DRAFT, SENT, PAID, PARTIALLY_PAID
}
extension ParseToString on Currency, InvoiceStatus {
String toShortString() {
return this.toString().split('.').last;
}
}
虽然无法为多个枚举添加扩展,但由于 dart 2.14
所有枚举都扩展了一个公共接口:Enum。这允许您向所有枚举添加扩展:
extension on Enum {
String toShortString() {
return this.toString().split('.').last;
}
}
之后,您可以对任何枚举对象使用 .toShortString()
。
是否可以将相同的 dart 扩展应用于多个枚举?这是我的枚举和扩展。
enum Currency {
EUR, INR, USD, CNY, JPY, GBP
}
extension ParseToString on Currency {
String toShortString() {
return this.toString().split('.').last;
}
}
能不能做成这样
enum InvoiceStatus {
DRAFT, SENT, PAID, PARTIALLY_PAID
}
extension ParseToString on Currency, InvoiceStatus {
String toShortString() {
return this.toString().split('.').last;
}
}
虽然无法为多个枚举添加扩展,但由于 dart 2.14
所有枚举都扩展了一个公共接口:Enum。这允许您向所有枚举添加扩展:
extension on Enum {
String toShortString() {
return this.toString().split('.').last;
}
}
之后,您可以对任何枚举对象使用 .toShortString()
。