Flutter开发效率提升1000%,Flutter Quick教程之定义Api(四)

现在我们来讲讲,如何建立Api 响应数据的变量。

这个变量,本质上就是对根据json数据生成model的引用。

这个name就是引用名。

这个path,就是引用的Model Data里面的具体字段,在实际操作过程中,校验是由右边的json数据过滤来完成的。

比如path引向了model里面的一个具体字段,那么,json数据会自动过滤出来这些字段。json数据和model是一一对应的,所以过滤出来的数据,就自动对应model里面的数据。

Path是有一定规则的,很简单,就三条,但是,path后面再讲,先举个具体的例子来解释上面的这段话。

假设json数据是这个

{
  "status": 1,
  "message": "success",
  "data": {
    "name": "jack"
  }
}

那么生成的model是这个

Dart 复制代码
class Data {
  int? status;
  String? message;
  DataData? data;

  Data({
    this.status,
    this.message,
    this.data,
  });

  Data.fromJson(Map<String, dynamic> json) {
    status = json['status'];
    message = json['message']?.toString();
    data = json['data'] != null ? DataData.fromJson(json['data']) : null;
  }

  Map<String, dynamic> toJson() {
    return {
      'status': status,
      'message': message,
      'data': data?.toJson(),
    };
  }
}

class DataData {
  String? name;

  DataData({
    this.name,
  });

  DataData.fromJson(Map<String, dynamic> json) {
    name = json['name']?.toString();
  }

  Map<String, dynamic> toJson() {
    return {
      'name': name,
    };
  }
}

那么,我们进行输入,

Name输入框里面输入 someattr

Path 输入框里面输入 @.message

那么,这时候 someattr就指向了Data的message字段。

实际使用的时候,就是根据Name这个字段的值进行引用,如此实现对json数据的引用。

后面,我们将具体讲Path的规则。

官方网址:www.appshop.cc

相关推荐
喵叔哟3 分钟前
重构代码之取消临时字段
java·前端·重构
还是大剑师兰特44 分钟前
D3的竞品有哪些,D3的优势,D3和echarts的对比
前端·javascript·echarts
王解44 分钟前
【深度解析】CSS工程化全攻略(1)
前端·css
一只小白菜~1 小时前
web浏览器环境下使用window.open()打开PDF文件不是预览,而是下载文件?
前端·javascript·pdf·windowopen预览pdf
方才coding1 小时前
1小时构建Vue3知识体系之vue的生命周期函数
前端·javascript·vue.js
阿征学IT1 小时前
vue过滤器初步使用
前端·javascript·vue.js
王哲晓1 小时前
第四十五章 Vue之Vuex模块化创建(module)
前端·javascript·vue.js
丶21361 小时前
【WEB】深入理解 CORS(跨域资源共享):原理、配置与常见问题
前端·架构·web
发现你走远了1 小时前
『VUE』25. 组件事件与v-model(详细图文注释)
前端·javascript·vue.js
Mr.咕咕1 小时前
Django 搭建数据管理web——商品管理
前端·python·django