在Flutter中,如果我把我的方法放在widget的构建方法里面或外面,有什么区别吗?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在Flutter中,如果我把我的方法放在widget的构建方法里面或外面,有什么区别吗?相关的知识,希望对你有一定的参考价值。

我开始使用Flutter,并得到了一些问题,关于哪里是正确的地方,把我的方法,内部或外部的widget的构建方法?

例子:我有我的Widget并创建了一个方法showText。如果我把这个方法放在widget的build方法里面还是外面(作为类本身的方法),有什么区别吗?

似乎哪种方法都可以。

谅谅

答案

如果你有一些可重用的代码,可以考虑把它外包到自己的 Widget.

如果这太过繁琐,考虑使用帮助者构建方法是一个有效的选择.对于Dart编译器来说,把这些方法放在哪里并不重要,但是为了减少缩进和提高可读性,我建议把它们放在类里面。

另外,考虑将这些方法命名为 _build.... 这让读者清楚地知道,它们是帮助者构建方法。下划线也确保了如果你改变了原始的 build 方法,而助记方法就会变得不被使用。

下面是一个例子。

class A extends StatelessWidget {
  Widget build(BuildContext context) {
    return Column(
      children: [
        _buildTitle(context),
        _buildContent(context),
      ],
    );
  }

  Widget _buildTitle(BuildContext context) { ... }
  Widget _buildContent(BuildContext context) { ... }
}

以上是关于在Flutter中,如果我把我的方法放在widget的构建方法里面或外面,有什么区别吗?的主要内容,如果未能解决你的问题,请参考以下文章

我想把我的列表视图放在下拉底部

你认为我应该把我所有的 php 函数放在一个文件中吗?

在 Flutter 中调整垂直和水平方向响应的视图

为啥我把我的磁盘格式化?说我没有执行此项操作的权限?

我应该把我的静态文本文件放在哪里才能成为 OTPy?

我把我的一个html页面用eclipse打开,里面的汉字显示不出来为啥?