Firebase 颤振:可以等待兄弟小部件完成构建吗?
标题可能说明了一切。我的场景是,我有不同的小部件等待firebase数据构建它们的内容。最后一个小部件应该等待其他小部件完成,并根据从Firebase检索到的数据进行一些计算。这可能吗 我已尝试ValueListenableBuilder,该程序导致以下错误: 为ValueNotifier发送通知时引发了以下断言:Firebase 颤振:可以等待兄弟小部件完成构建吗?,firebase,flutter,dart,google-cloud-firestore,Firebase,Flutter,Dart,Google Cloud Firestore,标题可能说明了一切。我的场景是,我有不同的小部件等待firebase数据构建它们的内容。最后一个小部件应该等待其他小部件完成,并根据从Firebase检索到的数据进行一些计算。这可能吗 我已尝试ValueListenableBuilder,该程序导致以下错误: 为ValueNotifier发送通知时引发了以下断言: 在生成过程中调用setState()或markNeedsBuild()。在build方法中,使用用于操作的FutureBuilder小部件。FutureBuilder小部件包含一个名
在生成过程中调用setState()或markNeedsBuild()。在
build
方法中,使用用于操作的FutureBuilder
小部件。FutureBuilder
小部件包含一个名为future
的属性,该属性采用一个返回future
的方法
在该方法中,您可以使用
wait
执行第一个查询,并使用第一个查询的结果执行第二个查询 这是因为您想在build
方法内部执行某些操作-这是错误的,因为build
可以被多次调用,并且您无法控制它-如果您有一些使用Future
/Stream
的数据层,请使用它们的API来确定数据何时准备好并执行完全符合您的要求的代码@pskink。我最近也遇到了同样的问题,我解决了它,但构建了另一个异步方法。在该方法中,我等待1微秒,因此构建方法完成,我更改数据并调用setState。是否可以在方法中添加未来而不是等待1微秒?我总是认为等待一段固定的时间是不安全的(或浪费)。谢谢。按照您的方法,我成功地构建了它。本质上,我将嵌套的Firebase访问放在未来的方法中,在构建上下文之前等待该方法。