We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Dado um determinado enum, por exemplo
enum PaymentType{ money('Dinheiro'), billet('Boleto'), credit('Cartão de crédito'), debit('Cartão de débito'), none(null); final String? name; const PaymentType(this.name); }
Eu tenho uma classe dessa forma
class Payment{ final String id; final PaymentType type; const Payment({required this.id, required this.type}); static Payment fromJson(Map<String, dynamic> json){ return Payment( id: json['id'] ?? '', type: PaymentType.values.firstWhere((e) => e.name == json['type']), ); } }
Nesse caso, como eu poderia fazer a implementação usando o dson_adapter? O enum não possui um .new Então não tem como fazer PaymentType.new
.new
PaymentType.new
The text was updated successfully, but these errors were encountered:
@SamuelGadiel , uma sugestão...
enum PaymentType { money('Dinheiro'), billet('Boleto'), credit('Cartão de crédito'), debit('Cartão de débito'), none(null); final String? label; const PaymentType(this.label); static PaymentType fromJson(String type) => values.firstWhere((value) => value.name.toLowerCase() == type.toLowerCase()); } class Person { final int id; final String name; final int age; final PaymentType type; Person({ required this.id, required this.name, required this.age, required this.type, }); } void main() { final dson = DSON(); final jsonMap = { 'id': 1, 'name': 'Joshua Clak', 'age': 3, 'type': 'credit', }; Person person = dson.fromJson( jsonMap, Person.new, resolvers: [ (key, value) => // (key == 'type') ? PaymentType.fromJson(value) : value, ] ); print(person.id); /// 1 print(person.name); /// Joshua Clak print(person.age); /// 3 print(person.type); /// PaymentType.credit }
ignore o fato de uma entidade pessoa ter um tipo de pagamento hahahah
Sorry, something went wrong.
No branches or pull requests
Dado um determinado enum, por exemplo
Eu tenho uma classe dessa forma
Nesse caso, como eu poderia fazer a implementação usando o dson_adapter?
O enum não possui um
.new
Então não tem como fazer
PaymentType.new
The text was updated successfully, but these errors were encountered: