当前位置: 首页 > news >正文

cod单页建站工具企业建立网站的好处

cod单页建站工具,企业建立网站的好处,中国怎么样做跨境网站,如何注册公司邮箱目录 一. 使用dart:convert实现JSON格式编解码1. 生成数据模型类2. 将JSON数据转化成数据模型类3. 数据模型类转化成JSON字符串 二、借助json_serializable实现Json编解码1.添加json_annotation、build_runner、json_serializable依赖2. 创建一个数据模型类3. 使用命令行生成JS… 目录 一. 使用dart:convert实现JSON格式编解码1. 生成数据模型类2. 将JSON数据转化成数据模型类3. 数据模型类转化成JSON字符串 二、借助json_serializable实现Json编解码1.添加json_annotation、build_runner、json_serializable依赖2. 创建一个数据模型类3. 使用命令行生成JSON序列化和反序列化的代码4. 将JSON数据转化成数据模型类5. 数据模型类转化成JSON字符串 三、 两种方案对比 一. 使用dart:convert实现JSON格式编解码 要在Flutter中解析JSON数据您可以使用Flutter的内置库dart:convert。以下是一个简单的示例演示如何解析JSON数据 假设您有以下JSON数据包含JSON数组和数据模型嵌套 {name: John,age: 30,email: johnexample.com,car: [{name: 保时捷,price: 500},{name: 奔驰,price: 1000}] }1. 生成数据模型类 数据模型生成网址 https://javiercbk.github.io/json_to_dart/ 目前发现的缺点最外层是数组格式json生成的数据模型有问题如下图 class UserBean {String? name;int? age;String? email;ListCar? car;UserBean({this.name, this.age, this.email, this.car});UserBean.fromJson(MapString, dynamic json) {name json[name];age json[age];email json[email];if (json[car] ! null) {car Car[];json[car].forEach((v) {car!.add(new Car.fromJson(v));});}}MapString, dynamic toJson() {final MapString, dynamic data new MapString, dynamic();data[name] this.name;data[age] this.age;data[email] this.email;if (this.car ! null) {data[car] this.car!.map((v) v.toJson()).toList();}return data;} }class Car {String? name;int? price;Car({this.name, this.price});Car.fromJson(MapString, dynamic json) {name json[name];price json[price];}MapString, dynamic toJson() {final MapString, dynamic data new MapString, dynamic();data[name] this.name;data[price] this.price;return data;} } 2. 将JSON数据转化成数据模型类 导入dart:convert库 import dart:convert;使用json.decode()方法解析JSON数据为一个Map对象 MapString, dynamic map json.decode(jsonString);将map对象转化成数据模型类 UserBean userBean UserBean.fromJson(userBeanMap);3. 数据模型类转化成JSON字符串 导入dart:convert库 import dart:convert;将数据模型类转化成map对象 MapString,dynamic userBeanMap1 userBean.toJson();将Map对象转化成JSON字符串 String userBeanJson jsonEncode(userBeanMap1);二、借助json_serializable实现Json编解码 1.添加json_annotation、build_runner、json_serializable依赖 dependencies:flutter:sdk: flutterjson_annotation: ^4.8.1dev_dependencies:...build_runner: 2.3.0 4.0.0 json_serializable: ^6.6.2 ...2. 创建一个数据模型类 serializable数据模型生成网址 https://caijinglong.github.io/json2dart/index_ch.html import package:json_annotation/json_annotation.dart; part user_bean.g.dart;JsonSerializable()class UserBean extends Object {JsonKey(name: name)String name;JsonKey(name: age)int age;JsonKey(name: email)String email;JsonKey(name: car)ListCar car;UserBean(this.name,this.age,this.email,this.car,);factory UserBean.fromJson(MapString, dynamic srcJson) _$UserBeanFromJson(srcJson);MapString, dynamic toJson() _$UserBeanToJson(this);}JsonSerializable()class Car extends Object {JsonKey(name: name)String name;JsonKey(name: price)int price;Car(this.name,this.price,);factory Car.fromJson(MapString, dynamic srcJson) _$CarFromJson(srcJson);MapString, dynamic toJson() _$CarToJson(this);}serializable数据模型3个要素 导入json_annotation库注解用于标识JSON字段和生成代码的相关信息。使用JsonSerializable()注解类用 JsonKey(name: xx)注解字段xx必须与JSON字段一一对应part xx.g.dart; xx是当前文件名称缺失这个配置或者配置错误都会导致生成文件出错_$XXFromJson 和_$XXToJson是通过build_runner自动生成的代码用于序列化和反序列化JSON数据。 3. 使用命令行生成JSON序列化和反序列化的代码 flutter packages pub run build_runner build这个命令会为你的数据模型类生成user.g.dart文件其中包含了_$XXFromJson和_$XXToJson方法的实现。 XX.g.dart默认会生成在模型类的同级目录。 如果有其他.g文件存在影响可用这个命令flutter packages pub run build_runner build --delete-conflicting-outputs如果build成功但是没有文件生成需要检查part ‘xx.g.dart’;是否缺失或者配置错误 4. 将JSON数据转化成数据模型类 导入dart:convert库 import dart:convert;使用json.decode()方法解析JSON数据为一个Map对象 MapString, dynamic map json.decode(jsonString);将map对象转化成数据模型类 UserBean userBean UserBean.fromJson(userBeanMap);5. 数据模型类转化成JSON字符串 导入dart:convert库 import dart:convert;将数据模型类转化成map对象 MapString,dynamic userBeanMap1 userBean.toJson();将Map对象转化成JSON字符串 String userBeanJson jsonEncode(userBeanMap1);三、 两种方案对比 相同点 将Map对象转化成JSON字符串以及将Map对象转化成JSON字符串都是依赖convert;JSON字符串和数据模型之间转化都需要借助Map对象 不同点 处理数据模型字段变更场景方案二修改代码较少出错的概率更低 方案一需要添加或者修改字段并且手动修改fromJson和toJson方法 方案二需要添加或者修改字段添加相关注解并重新使用命令行生成JSON序列化和反序列化的代码 Json最外层的数据结构是数组类型 方案一不支持 方案二支持
http://www.pierceye.com/news/167270/

相关文章:

  • 企业网站开发所需要的模块郴州网警
  • 案例网站网页设计实训报告结束语
  • 重庆网上房地产网站龙岩属于哪里
  • 高水平的番禺网站建设在天猫开店需要什么条件与费用
  • 给网站加个地图的代码wordpress 视频预览
  • 邯郸去哪做网站改版短网址生成器在线
  • 广州手机模板建站互联网公司薪资待遇
  • 网站建设的作用有哪些方面wordpress 首页描述
  • 汕头龙湖网站建设做网站用什么团建
  • 网站建站的技术解决方案高唐网站开发
  • dz网站收款即时到账怎么做的礼县建设局网站
  • 专业做轮胎的网站女同wordpress
  • 宁波公司网站首页优化商城网站前期seo应该怎么做
  • ui设计网站用red5做直播网站
  • 网站开发问题论文王老吉网站建设水平优点
  • 平安银行官方网站制作网站步骤
  • 做个网站好还是做淘宝好宁波网站制作好公司
  • 开发网站需要怎么做嘉兴快速建站合作
  • 阿里云建站后台建站网站降权怎么恢复
  • 天津河西做网站公司怎么设置网站的关键字
  • 做网站会提供源代码吗朝阳网站制作设计
  • 企业做网站找谁有什么建筑网站
  • 自己做的网站显示iis7游戏网站怎么建设
  • 淘宝联盟怎么做自已的网站什么叫利用网站做蜘蛛池
  • 做网站要多少带宽镇江网站建设联系思创
  • 唐朝网站的地址软件设计师报考条件
  • seo网站建设刘贺稳营销专家a西宁市网站建设多少钱
  • 上海哪家公司做网站最好网站建设服务合同 付款方式
  • 做网站需要源码吗软件代理商招募
  • 陕西省西安市制作网站上海云建站模板