https://github.com/samsung-lec/flutter-jsonCodable

1. 기본 예제 json 직렬화

class Person {
  String name;
  int age;
  String email;

  Person({required this.name, required this.age, required this.email});

  // fromJson 메서드
  Person.fromJson(Map<String, dynamic> json) {
    return Person(
      name: json['name'],
      age: json['age'],
      email: json['email'],
    );
  }

  // toJson 메서드
  Map<String, dynamic> toJson() {
    return {
      'name': name,
      'age': age,
      'email': email,
    };
  }
}

2. JsonCodable build runner 최신 방법

<aside> 💡 아직 베타 버전이어서 channel 을 변경해서 적용한다.

다트 3.5에 포함된 JsonCodable

본인의 현재 버전을 확인해보면 된다.

</aside>

2.1 채널 변경 - Dart 3.5 부터 사용가능하기 때문

마스터 버전으로 변경해서 upgrade 하면 3.5를 사용할 수 있다.

flutter channel master
flutter upgrade

Untitled

2.2 json 패키지 다운로드

https://pub.dev/packages/json/install

dart pub add json
json: ^0.20.1

2.3 추가

analysis_options.yaml

analyzer:
 enable-experiment:
   - macros