Ped*_*ngo 7 flutter flutter-layout
如果我们只是在 StatelessWidget 上使用 StatefullWidget,反之亦然,是否会对性能产生影响?
在我看来,我们只是StatefullWidget用于更新 UI 的一部分setState(),有一种方法可以在 中设置一些代码initState()并在dispose()函数中处理一些东西。因此,当我不需要这些东西时,我会继续使用StatelessWidget.
但是这两个最常用的小部件之间的真正性能影响是什么?
在性能方面, aStatelessWidget几乎与StatefulWidget带有空的a 相同State。
写作:
class Example extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Container();
}
}
Run Code Online (Sandbox Code Playgroud)
或者:
class Example extends StatefulWidget {
@override
_ExampleState createState() => _ExampleState();
}
class _ExampleState extends State<Example> {
@override
Widget build(BuildContext context) {
return Container();
}
}
Run Code Online (Sandbox Code Playgroud)
不会对您的应用程序的性能产生任何明显的影响。
使用StatelessWidget这里确实有一点收获。但它小得可笑:
它们之间的区别可以概括为调用空函数与不调用它。有一点,但绝对无所谓。
原因是,在内部实现StatefulWidget和StatelessWidget几乎相同。
StatelessWidget 确实拥有所有额外的生命周期StatefulWidget。它有一个“initState”/“dispose”。甚至一个setState!它们只是不是公共 API 的一部分。
| 归档时间: |
|
| 查看次数: |
907 次 |
| 最近记录: |