综合看来Flutter 跟RN Cordova 相比还是具有一定的优势的,从去年开始到现在一直收到开发者的青睐,不得不说Flutter 性能上还是王者,跟原生相比还有点小差距,但是可以一端多用,你只要稍微会滴安卓或者iOS就可以,作为iOS开发者来说,这些是小问题,从去年开始,就接触RN开发项目再到后来Flutter,自我感觉 Flutter是一定的趋势,可以适当了解一下(以上竟是扯淡)接下来进去实例
一,网络请求
1.网络请求Flutter 中文 提供了两种一个是dart:io 一个是dio ,推荐dio,我这里是用dio的(直接贴代码)
2.有一个网站可以模拟请求连接mocky
3 这样就可请求数据了
二 处理返回数据 json_serializable中文网
1.添加依赖
2.处理返回数据有两种
一种是手动序列化和反序列化(dart:convert)
通过代码生成自动序列化和反序列化( json_serializable)
主要介绍一下json_serializable
3 创建一个user.dart 导入头文件,@JsonSerializable() 编辑代码
4.使用命令flutter packages pub run build_runner build 我们可以在需要时为我们的model生成json序列化代码 例如
这个文件是命令生成的 ,这样就完成序列化了跟反序列化,song.g.dart 就是生成的
,
5,也可根据服务器放回字段添加,例如服务器人员添加一个字段wideth 这时,可以手动添加,关键字@ JsonKey ,构建机制里添加一下
@JsonKey(name:'wideth')
Stringwideth;
6,找到刚刚命令生成的dart 添加wideth
wideth: json['wideth']as String
'wideth':instance.wideth
这就OK了,大神勿喷