用户登录

现在这个 PostIndexModel 实例里的 posts 的值是 null,是因为还没有执行  getPosts 方法。我们需要找个地方执行一下这个方法。

可以在创建 PostIndexModel 这个类的实例的时候,执行 getPosts  获取内容列表数据。打开 post_index_model.dart 。在这个类里面添加一个构造方法,名字是 PostIndexModel,在这个构造方法里执行一下 getPosts 这个方法。

保存一下文件,如果仍然输出的是 null,可以打开编辑器的调试,重新启动一下。这次你会发现这次控制台上输出的就是从服务端的内容列表接口那里获取到的内容列表数据。

在 initState 里请求数据

还有一种方法是在创建小部件的时候执行这个方法请求获取数据。先注释掉这个 PostIndexModel 构造方法。然后打开 post_list.dart,选中这个小部件,command + .  把它转换成一个带状态的小部件。

在小部件的状态类里面,添加一个 initState,在这个方法里,先用一个 Future.microtask,在这个方法的回调参数里面,可以用一下 context.read 这个方法,设置一下类型,这里就是 PostIndexModel,这样得到的就是 PostIndexModel 实例,这里用的是 read 方法,不是 watch,因为在这里我们不打算监听这个实例的变化。执行一下 getPosts 这个方法。

保存一下文件,在控制台上仍然会输出请求回来的内容列表数据。

请求内容列表数据《 Flutter 2:内容列表 》

统计

14696
分钟
0
你学会了
0%
完成

社会化网络

关于

微信订阅号

扫描微信二维码关注宁皓网,每天进步一点