build_runner

    사실 json_serializable은 혼자 쓸 수 없습니다. 

    build_runner와 함께 써야 합니다. 이전에 포스팅한 Json 데이터 글의 예시를 다시 보겠습니다 .

    2021.12.14 - [Flutter(플러터)/Data] - JSON 데이터 처리

     

    JSON 데이터 처리

    모바일 개발자가 Flutter를 접하고 처음 네트워크 통신을 구현하고자 할 때, Gson, Jackson, Moshi와 비슷한 기능을 하는 라이브러리를 가장 먼저 찾지 않을까 합니다. Json 파일을 데이터 모델로 변경하

    byounghonglim.tistory.com

     

    import 'package:json_annotation/json_annotation.dart';
    
    part 'user.g.dart';
    
    @JsonSerializable()
    
    class User {
      User(this.name, this.email);
    
      @JsonKey(name: 'name')
      String userName;
      String email;
      
      factory User.fromJson(Map<String, dynamic> json) => _$UserFromJson(json);
    
      Map<String, dynamic> toJson() => _$UserToJson(this);
    }

     

    코드가 자동으로 생성된다고 했는데, 어디로 생기는 걸까요? 

    part 'user.g.dart';

    위 파일에 생성되며 이 때 필요한 라이브러리가 build_runner 입니다. 

    라이브러리 설치와 사용법은 하기 링크에서 확인 바랍니다. 

    https://pub.dev/packages/build_runner

     

    build_runner | Dart Package

    A build system for Dart code generation and modular compilation.

    pub.dev

     

    'Flutter(플러터) > pub.dev' 카테고리의 다른 글

    Flutter URL Launcher ( 실행 )  (0) 2022.01.04
    json_serializable  (0) 2021.12.14
    retrofit (레트로핏)  (0) 2021.12.14

    댓글