实现步骤
1.安装插件
安装FlutterJsonBeanFactory插件
2.使用插件
右键想要生成实体类的文件夹点击JsonToDartBeanAction
输入类名和想要格式化的json串
这时会生成如下的实体类
import 'package:flutter_prevent_lost/generated/json/base/json_field.dart';
import 'package:flutter_prevent_lost/generated/json/login_bean_entity.g.dart';
import 'dart:convert';
@JsonSerializable()
class LoginBeanEntity {
late String msg;
late int code;
late LoginBeanData data;
LoginBeanEntity();
factory LoginBeanEntity.fromJson(Map<String, dynamic> json) => $LoginBeanEntityFromJson(json);
Map<String, dynamic> toJson() => $LoginBeanEntityToJson(this);
@override
String toString() {
return jsonEncode(this);
}
}
@JsonSerializable()
class LoginBeanData {
late String token;
LoginBeanData();
factory LoginBeanData.fromJson(Map<String, dynamic> json) => $LoginBeanDataFromJson(json);
Map<String, dynamic> toJson() => $LoginBeanDataToJson(this);
@override
String toString() {
return jsonEncode(this);
}
}
然后我们使用的时候调用里面的转换json的方法即可
var name = _unameController.text;
var pass = _upassController.text;
///创建Map 封装参数
Map<String,dynamic> map = Map();
map['username'] = name;
map['password'] = pass;
var result = await HttpGlobal.formDataHttpClient().post("app/login",data: map);
LoginBeanEntity login = LoginBeanEntity.fromJson(result.data);
网友评论