Flutter Listview 项目不呈现
Flutter Listview items not rendering
我所做的是从 Firebase 获取 项,然后将它们保存在列表中,然后我将它们显示在 ListView 中。 我现在遇到的问题是我检查列表是否有项目,如果有,它会显示我的 ListView 和项目,如果没有项目,它会显示文本,但甚至 但即使有项目,文本也会显示,但在按下热重载后,项目会显示。
我的猜测是小部件的整体状态存在问题,因为像 SetState 这样的东西没有效果或刷新指示器
StreamBuilder
跟随您的 masterListStart().asStream
而不是 masterList
流有什么原因吗?我不是说这是错的,只是不是很明显。
无论哪种方式,它都不会自动重建,因为您的 displayStory
方法中唯一对流有反应的部分只有在满足非空列表条件后才会构建。如果不实施响应式状态管理解决方案,您的代码中就没有任何内容会自动通知任何侦听器 storysList
的状态已更改,这意味着没有任何内容会触发重建。这就是为什么您必须热重载才能看到更改。
不用我深入了解您的代码,请尝试在 displayStory
方法的顶层返回 StreamBuilder
并将所有条件放在其 builder
方法中。
我所做的是从 Firebase 获取 项,然后将它们保存在列表中,然后我将它们显示在 ListView 中。 我现在遇到的问题是我检查列表是否有项目,如果有,它会显示我的 ListView 和项目,如果没有项目,它会显示文本,但甚至 但即使有项目,文本也会显示,但在按下热重载后,项目会显示。
我的猜测是小部件的整体状态存在问题,因为像 SetState 这样的东西没有效果或刷新指示器
StreamBuilder
跟随您的 masterListStart().asStream
而不是 masterList
流有什么原因吗?我不是说这是错的,只是不是很明显。
无论哪种方式,它都不会自动重建,因为您的 displayStory
方法中唯一对流有反应的部分只有在满足非空列表条件后才会构建。如果不实施响应式状态管理解决方案,您的代码中就没有任何内容会自动通知任何侦听器 storysList
的状态已更改,这意味着没有任何内容会触发重建。这就是为什么您必须热重载才能看到更改。
不用我深入了解您的代码,请尝试在 displayStory
方法的顶层返回 StreamBuilder
并将所有条件放在其 builder
方法中。