采纳答案成功!
向帮助你的同学说点啥吧!感谢那些助人为乐的人
老师想问下,fetchpost方法里返回的是CommonModel类,怎么方法名前面的返回值是Future,难道是dart可以自动把CommonModel转化为Future?
fetchpost 返回的是Future如果要获取CommonModel可以用async await:
Future<Null> _handleRefresh() async { try { HomeModel model = await HomeDao.fetch(); setState(() { localNavList = model.localNavList; subNavList = model.subNavList; gridNavModel = model.gridNav; salesBoxModel = model.salesBox; bannerList = model.bannerList; _loading = false; }); } catch (e) { print(e); setState(() { _loading = false; }); } return null; }
我的意思是 fetchPost方法的方法签名写的返回值是Future<Model>,但是该方法里面您写的是return Model.fromJson(result); 这里返回的为什么是Model对象啊,这不就和方法签名的返回值不一致了吗,好奇为什么还是能正常运行
await将异步转同步了,所以获取到的是Future<Model>中的Model,这个属于Dart 中Future的基础语法,如果对这块还不是很熟悉的话,建议先熟悉下Dart 的Future的用法以及特点,磨刀不误砍柴工
登录后可查看更多问答,登录/注册
解锁Flutter开发新姿势,,系统掌握Flutter开发核心技术。
1.7k 4
2.0k 1
4.1k 5
1.8k 3
1.7k 5