如何解决带有setState或FutureBuilder的InitState?哪种方法在Flutter中显示数据库中的数据更好?
我的应用程序在ListView
中显示从SQLite数据库收集的数据。我可以使用FutureBuilder
等待数据被获取,然后返回ListView。或者,我可以将回调设置为何时将数据加载到InitState()
中,然后将数据加载到setState()
中。我能够同时使用两种方法并显示CircularProgressIndicator
直到加载数据。我应该继续在应用程序的其余部分中使用以下哪种方法更好?
解决方法
FutureBuilder
是仅构建其子级的窗口小部件,而setState
中的回调块内的initState
会重建整个屏幕。最好只重建小部件树的一部分以提高性能,而不是在接收到数据时重建整个屏幕。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。