问题标签 [statelesswidget]
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.
dart - Flutter 中的有状态和无状态小部件之间的关系是什么?
有状态小部件被定义为在其生命周期内改变其状态的任何小部件。但是,将StatelessWidget
aStatefulWidget
作为其孩子之一是一种非常普遍的做法。如果它有作为它的孩子之一,它不会StatelessWidget
成为有状态的吗?StatefulWidget
我尝试将文档作为 的代码的一部分进行查看StatelessWidget
,但无法弄清楚 aStatelessWidget
可以Statefulwidget
作为其子代并且仍然存在StatelessWidget
。
Flutter中有状态和无状态的widget有什么关系和区别?
dart - Flutter:无状态小部件中的可变字段
该类StatelessWidget
被标记为immutable
。但是,我使用的是scoped model
,这意味着我避免StatefulWidget
使用来model
改变state
。StatelessWidget
这导致我有non-final fields
in StatelessWidget
,这不会导致errors
,因为它只是一个warning
. 但我想知道是否有更好的方法?
dart - Flutter:StatelessWidget.build 被多次调用
我总是将代码放在我的问题中,但这一次是不可能的,因为错误可能存在于一千行代码中的任何地方。然而:
我注意到我的主屏幕 ( StatelessWidget
) 的构建方法,它是MaterialApp
(home 属性) 的后代,在调试模式下像往常一样调用一次,但在发布模式下调用三次。
在什么情况下会发生这样的事情?我已经尝试过多次复制,但都失败了。
编辑:
问题是我将从媒体查询中获得的屏幕大小存储为全局变量,以便我可以从任何地方访问它。现在我需要在树的下方访问有状态小部件的 init 方法中的该变量。在调试模式下似乎没有问题,但在发布模式下,使媒体查询(必须在内部构建)的小部件的构建方法奇怪地被调用一次,媒体查询的结果是 Size(0.0, 0.0) ,然后调用树更下方的小部件的 init 方法,然后再调用带有媒体查询的 build 方法两次(这次使用正确的屏幕尺寸)。结果是我在 init 方法中没有正确的屏幕尺寸。
button - 使用不包含导航器 statefulwidget 的上下文请求导航器操作
我正在研究下面的 Flutter 代码。我对名为“Regitrese”的第二个按钮有疑问。我看过的每个地方都使用无状态小部件,所以我不知道如何修复它。我尝试更改 void 以将其放在 home:MyHomePage() 并将 MyHomePage 设置为 statefull,而不是从 MyApp 总线获取 statefull,它显示错误缺少 StatefulWidget.createState 的具体实现。我不确定它应该怎么走。你能让按钮在 StatefulWidget 中工作吗?有没有我没看到的技巧?
dart - 为什么我会使用 StatelessWidget 而不是 StatefulWidget?
我知道这StatefulWidget
允许我们更改小部件,而StatelessWidget
不能。
但是,如果StatefulWidget
可以执行可以执行的所有StatelessWidget
操作 + 更多,我为什么还要使用StatelessWidget
over StatefulWidget
?除了更容易实施之外,其他方面更好吗
?StatelessWidget
flutter - 更深入的理解:有状态的小部件总是重建,即使我在不同的观点?
问题: GroupsOverview(使用 Futurebuilder - 代码很长,此处未显示)似乎在单击应用程序中的其他视图(以及“子视图”)时不断重建,从而导致过多的 Algolia 操作。我认为这是重建洞树的问题,但我对此一无所知。考虑过集成例如 Scope 模型。
我有一个主要问题,我作为 Flutter 初学者的整体理解结束了。我有一个类“GroupsOverview”,它(每次重新加载)根据我当前的位置显示来自网络服务(Algolia)的实时数据的组。这是一个有状态的小部件,因为当前位置是通过 initState 加载的。视图是选项卡视图中的选项卡,也是有状态的。保活似乎不起作用。那么,当我查看状态小部件 GroupsOverview 时(而不是在我单击应用程序中的其他视图时),我该如何管理它?
dart - Flutter:在 StatelessWidget 中哪里添加监听器?
如果我使用的是 StatefulWidget,那么我将在 initState 方法中监听 Stream。我会在 StatelessWidget 中哪里做同样的事情(比如使用 Bloc 和流进行状态管理)?我可以在构建方法中做到这一点,但由于这些是重复的,我想知道是否有比检查现有侦听器更有效的方法,如下所示。我知道这是一个多余且无用的示例,但这只是为了说明问题。
performance - StatelessWidget 与在性能方面返回 Widget 的函数
在性能方面,使用 aStatelessWidget
和 a有什么区别function returning a Widget
吗?
我很清楚至少在这个颤振的回购问题中指出的差异与性能没有关系。
事实是,我有一些同事声称functional widgets
在性能方面最差,但是在阅读了一些关于该主题的内容后,我找不到任何可以证明该断言的结论性文件,因此有关此问题的任何类型的澄清都是非常欢迎!
据我所知,它们之间的唯一区别在于使用 a 的情况const Widget
,这似乎可以避免重建阶段。
listview - 颤振类型'列表' 不是类型 'list 的子类型'
我正在尝试使用带有图像的卡片制作一个列表,其想法是这些卡片是将来通过 API 请求动态生成的,但现在我只想从图像开始,但是当我运行时,我有以下内容错误 :
“List”类型不是“list”类型的子类型
我该如何解决?,请您的帮助。
我的代码在一个名为:
请求.dart
这是我的代码:
dart - 无状态小部件是否自行处理?
我创建了一个PostUpdaterWidget
扩展StatelessWidget
,TextEditingControllers
用于测试 Bloc 模式的实现。
我在很多例子中看到控制器应该被处理掉。但是,没有方法可override
用于.dispose
StatelessWidget
我曾想过创建自己的 dispose 函数来处理使用的控制器,并为那些将使用此小部件的人创建此小部件的变量,以便我可以调用 dispose 函数。
但我想首先知道我是否真的需要这样做,或者这个 StatelessWidget 实际上是自行处理的。
我应该继续我的想法吗?或者就这样吧,因为它可能会自行处理这些控制器,所以我不应该担心内存泄漏。