问题标签 [flutter-state]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
google-maps - Flutter - 如何避免在路线之间重新加载谷歌地图?
我的应用程序的几条路线上都有谷歌地图。是否可以避免在新路线上重新加载 Google 地图?我正在考虑取消路线,并使用一个大堆栈,底部有谷歌地图,只是打开和关闭各种小部件,但是从堆栈中的小部件设置谷歌地图的状态(例如添加标记)变得困难。 ..
flutter - 无法在颤振中使用提供者来处理身份验证流程
如果有人无法理解我的问题,请告知
我已经使用 Provider 包来处理身份验证流程。我正在做的是: Main.dart -> Auth 处理程序小部件(其中包含用于检查 onAuthChange 的流生成器) -> 页面处理程序(如果用户是新用户,它将带用户从那里进入登录屏幕,它被转移到登录使用推送替换的页面)登录后检查用户是否存在数据 -> 如果存在,则将其带到主屏幕 -> 主屏幕包含 3 个选项卡。在主页选项卡中有注销按钮,但是当我按下它时它不起作用。在这方面帮助我。
主要.dart
Auth_Widget_Builder
Auth.Widget
如果数据存在,则在 checkUser.dart 中
Student_Home_Screen.dart
在 Hometab 中的 signOut 按钮功能
flutter - Flutter 周期性刷新和弹出所有其他页面导致错误
我有一个 ArticlesPage 小部件,它有一个定期计时器来再次路由同一页面。这是一种从外部 API 中提取新文章的方法。
为了避免屏幕堆栈中的页面过多,我Navigator.of(context).popUntil((route) => route.isFirst);
在 build 方法中使用了所有其他页面。
在定期路由期间,我不断看到以下错误:
未处理的异常:在 dispose() 后调用 setState():_ArticlesPageState#9ae77(生命周期状态:已失效,未安装) E/flutter (19115):如果您在 State 对象上调用 setState() 以获取不再存在的小部件,则会发生此错误出现在小部件树中
我应该如何解决它?
ArticlesPage 小部件:
slideRouteArticles 函数:
flutter - 按住时 FlatButton 不同的文本颜色
我是 Flutter 的新手。我想做一个简单的例子。我想在按住时更改平面按钮的颜色。基本上我做到了,但我不确定这是正确的方法。没有更简单的方法吗?例如,可能是如下属性;
简单形式的代码;
}
flutter - 使用提供程序为所有文本字段重置 TextfieldController
我在试图找出如何做到这一点的正确方法时遇到了问题。基本上在我的应用程序中,我想重置用户“清理”的所有字段。我可以重置所有内容,但TextFields
. 我发现解决该问题的唯一方法是使用您可以在Consumer
. 我不认为这是处理这类事情的正确方法。
我还想将所有控制器推入我的提供程序类,然后重置它们,但我认为它仍然太重了。我试图找到最干净、最轻便的解决方案,甚至想了解在这些情况下的最佳做法是什么。
提前致谢!
flutter - 如何处理本地状态与供应商的关系?
我使用提供程序包来管理我的应用程序状态。关于如何管理应用程序中的状态,我有几个问题。
- 为我的应用程序中的每个屏幕创建一个 ChangeNotifier 类来处理此页面的后端(仅提供给此屏幕)是一个好习惯吗?
在这样的示例中:如果我有一个包含多个小部件的页面,并且我需要重建页面的一小部分,例如在启用开关时添加新的 TextField。
在前面的例子中
- 我应该使用提供程序仅重建页面的一小部分,还是这部分主要通过仅使用 changeState() 来处理?
如果页面的本地状态应该在屏幕中处理。
- 我应该在哪里放置页面的逻辑,例如按钮单击时的 http 请求和加载此页面的数据?
flutter - Flutter 中的 InitState 有什么问题?
我正在尝试使用flutter和firebase进行自动登录并将其放入initState但它似乎没有被执行,因为我试图将它移动到Build Widget但没有任何效果但是当我将它放入LoginPageState时它已被执行但出现错误: 使用不包含导航器的上下文请求导航器操作。 我的代码:
flutter - List.remove() 删除了正确的对象,但列表中对象的状态发生了变化,就好像最后一个条目正在被删除一样
所以我这几天一直在尝试解决这个问题,我似乎在这里遇到了一个真正的死胡同。
问题(我在下面的代码中简化了)是当我尝试从 a 中删除一个项目时List<"SomeDataObject">
,它实际上确实从列表中删除了正确的对象。这很明显,因为我任意分配给对象的 ID确实会发生变化,就像我在删除某些东西时所期望的那样。然而,奇怪的是,即使 ID 在列表中移动并且正确的 ID 被删除,所有小部件的状态似乎都好像总是删除最后一项,即使被删除的对象位于中间甚至开始的名单。
一个例子是如果列表看起来像这样:
假设我试图从这个列表中删除中间项目。好吧,现在列表看起来像这样:
起初这似乎很棒,因为它看起来正是我想要的,但由于某种原因,颜色并没有改变它们的顺序,仍然是首先是红色,然后是蓝色。颜色状态数据似乎独立于实际对象发挥作用,我找不到明确的解决方案。
我有一个示例程序的代码来重现这个问题,我还有一些程序的下面的图片,以便更清楚问题是什么。
从上图可以看出,ID被删除了,下面的ID在屏幕上向上移动了,但是状态中的颜色信息并没有被删除。
任何尝试的想法将不胜感激。
flutter - 如何做列表元素的随机生成器?
我有清单:
我想从我的列表元素创建随机文本生成器。我在颤振中使用 statefull,当我点击按钮时,我想要列表中的新随机元素。我的代码示例:
为什么它不起作用我不明白......