前言:Dart本身是支持反射的奸披,但是Flutter卻沒有像Gson或者FastJson這樣優(yōu)秀的json反序列化工具嫁怀。因為反射在Flutter中是被禁止的限寞,具體參考官方文檔介紹:https://flutter.dev/docs/development/data-and-backend/json#is-there-a-gsonjacksonmoshi-equivalent-in-flutter
現(xiàn)在介紹一種比較好用的json反序列化工具:json_serializable,使用步驟如下:
1. 在 pabspec.ymal 文件中引入:
dependencies:
# 其他依賴包
json_annotation: ^2.0.0
dev_dependencies:
# 其他依賴包
# 運行"flutter packages pub run build_runner build"凤瘦,生成.g輔助文件承桥。
# 運行"flutter packages pub run build_runner watch"漆魔,可以實現(xiàn)文件監(jiān)聽硝全,自動地為你后續(xù)創(chuàng)建的實體類生成對應(yīng)的解析代碼部宿。 # 運行"flutter packages pub run build_runner watch"抄腔,生成.g輔助文件。
build_runner: ^1.0.0
json_serializable: ^2.0.0
2. 編寫實體類窟赏,可以使用這個網(wǎng)站快速生成想要的實體類妓柜。
可以選擇直接把文件下載下來,粘貼到項目中涯穷。
3. 運行 "flutter packages pub run build_runner build" 生成 .g 后綴的文件棍掐。
然后就可以用了,可以自己選擇修改個別類名拷况,然后自己折騰吧作煌。
寫不是很詳細,只是做個記錄赚瘦,方便以后用到再看粟誓,如果有疑問歡迎留言。