JSON解析与复杂模型转换实用技巧

一、

json是一种轻量级的数据交换语言,在网络中大量用到json作为数据传递的格式,那么在Flutter里面是如何使用json来处理数据的,以及json处理数据有哪些技巧呢?

JSON解析与复杂模型转换实用技巧_第1张图片

 

二、应该是用哪种JSON序列化方式?

--小型项目:手动序列化

--大型项目:借助插件生成  json_serializable和build-value

 

注:其实大型项目使用手动+借助下面提到的在线转换的方式更加灵活高效

 

三、如何序列化?

JSON解析与复杂模型转换实用技巧_第2张图片

通过上述方式可以将json字符串转换成Map,但Map中存放那些字段在使用时不方法,如何将Map转换成Model呢?

JSON解析与复杂模型转换实用技巧_第3张图片

这样就可以很明确知道model中有哪些字段了

 

四、复杂model解析

1、如何解析对象中的数组?

JSON解析与复杂模型转换实用技巧_第4张图片

 

解析:

如果参数不是final类型的,可以通过如下直接赋值的方式。

如果参数是final类型的,需要通过factory的方式进行创建。

 

对于集合中的数据,首先将它转换为List,然后调用List的map()方法,然后再转换为TravelTap

JSON解析与复杂模型转换实用技巧_第5张图片

 

2、如果需要加些异常处理:

JSON解析与复杂模型转换实用技巧_第6张图片

 

3、改成final

JSON解析与复杂模型转换实用技巧_第7张图片

 

 

五、提升效率:在线转换 JSON TO Dart?

--home_page.json

--json_to_dart

--json2dart

 

六、

 

 

 

你可能感兴趣的:(笔记,flutter)