美文网首页
Flutter json_serializable标准生成.g.

Flutter json_serializable标准生成.g.

作者: Gary_fei | 来源:发表于2020-05-09 16:56 被阅读0次

    前景:

    Json序列化工具json_serializable,在导入package, 在model.dart转模型类中,引入头文件,声明@JsonSerializable(),创建类型与属性,再执行flutter packages pub run build_runner build,然而并没有自动生成model.g.dart文件

    标准步骤:

    1. pubspec.yaml文件导入依赖库,注意文字的对其
    dependencies:
      flutter:
        sdk: flutter
      json_annotation: ^2.0.0
     
    dev_dependencies:
      flutter_test:
        sdk: flutter
      json_serializable: ^2.0.0
      build_runner: ^1.0.0
    
    1. 新建model.dart文件,导入头文件,文件内容,复制如下,格式最好整齐划一
    import 'package:json_annotation/json_annotation.dart';
    part 'model.g.dart';
     
    @JsonSerializable()
    class  Mate {
      var name;
      var age;
      Mate(this.name,this.age);
      factory Mate.fromJson(Map<String,dynamic> json) => _$MateFromJson(json);
      Map<String,dynamic> toJson() => _$MateToJson(this);
    }
    
    1. cd到工程的根目录,再执行下面命令
    flutter packages pub run build_runner build //使用 build_runner 生成 .g.dart 文件
    
    flutter packages pub run build_runner wacth //监控生成文件,如果有改动时自动生成/更新 .g.dart 文件
    
    1. 打开项目,应该就可以看到.g.dart文件

    如果出现报错或者仍然没生成.g.dart文件

    1. cd到工程的根目录,再执行下面命令
    flutter packages pub run build_runner build --delete-conflicting-outputs  //删除并重新创建.g.dart文件
    
    1. 没有生成,再运行下
    flutter packages pub run build_runner build
    

    相关文章

      网友评论

          本文标题:Flutter json_serializable标准生成.g.

          本文链接:https://www.haomeiwen.com/subject/magknhtx.html