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

相关推荐
GuWenyue15 小时前
放弃云端API!一套React+WebGPU本地LLM方案,零数据上传、离线可用
前端·人工智能·前端框架
原则猫16 小时前
函数/变量提升
前端
独泪了无痕17 小时前
Vue3 Hooks使用实战解析
前端·vue.js
shawxlee18 小时前
vue3在public下封装config.js自定义配置动态数据,可在打包后直接修改,方便后端部署及后续维护
前端·javascript·经验分享·vue·团队开发·js·项目优化
用户0595401744619 小时前
把记忆存储的回归测试从手工换成 Playwright + GitHub Actions,线上缺陷降低 80%
前端·css
触底反弹19 小时前
🚀 从 DOM0 级到 React 合成事件:前端事件监听的 20 年演进史
前端·react.js·面试
kyriewen19 小时前
我给前端项目的接口请求套了6层保护——才发现以前一直在裸奔
前端·javascript·面试
颜酱19 小时前
04 | 召回前置准备:搭好召回所需的四个数据库
前端·人工智能·后端
雨白19 小时前
NDK 初探:基于 C++ 实现参数哈希与签名校验
android
程序员正茂20 小时前
Android studio中初步使用OpenCV库
android·opencv