当前位置:  开发笔记 > 编程语言 > 正文

对于哪些flutter小部件,我们需要使用const?

如何解决《对于哪些flutter小部件,我们需要使用const?》经验,为你挑选了1个好方法。

我了解的好处,const并且不会在状态更改时重建小部件,但是当您在下面的代码中看到它们是常量并且我希望flutter自动处理它时,它仍然非常明显。或者,颤振已经在照顾它了,我不知道吗?

// This makes sense to me but with above mentioned concern 
const Text('Your Text Here')
const Icon(Icons.chevron_right, size: 20.0),

无论如何,我的问题是:将SizedBoxEdgeInsets小部件定义为下面定义的constants(const)可以吗?

Padding(
  padding:
      const EdgeInsets.only(top: 16.0, right: 6.0, bottom: 16.0, left: 16.0),
  child: Row(
    children: [
      const SizedBox(width: 16.0),
      const Icon(Icons.chevron_right, size: 20.0),
    ],
  ),
),

Yauhen Sampi.. 5

基本上是在尝试更新树中的一些小部件,如果它是常量,则什么也没有更新。在这里您可以找到解释。 https://dev.to/pedromassango/flutter-performance-tips-1-const-constructors-4j41

您需要知道一件重要的事情,如果您更改了树中的小部件,则该小部件之后的所有内容都将被删除并重新绘制(未更新)。因此,如果将其定义为const,则不会删除任何内容。没关系(您的问题的答案)另外我建议阅读Flutter重建屏幕和更新小部件的方式:https : //www.didierboelens.com/2019/09/flutter-internals/

最后一篇关于性能的精彩文章 https://api.flutter.dev/flutter/widgets/StatefulWidget-class.html#performance-considerations



1> Yauhen Sampi..:

基本上是在尝试更新树中的一些小部件,如果它是常量,则什么也没有更新。在这里您可以找到解释。 https://dev.to/pedromassango/flutter-performance-tips-1-const-constructors-4j41

您需要知道一件重要的事情,如果您更改了树中的小部件,则该小部件之后的所有内容都将被删除并重新绘制(未更新)。因此,如果将其定义为const,则不会删除任何内容。没关系(您的问题的答案)另外我建议阅读Flutter重建屏幕和更新小部件的方式:https : //www.didierboelens.com/2019/09/flutter-internals/

最后一篇关于性能的精彩文章 https://api.flutter.dev/flutter/widgets/StatefulWidget-class.html#performance-considerations

推荐阅读
小白也坚强_177
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有