【问题标题】:Methods vs separate classes for widgets in Flutter?Flutter中小部件的方法与单独的类?
【发布时间】:2021-11-19 19:56:55
【问题描述】:

我听说过很多关于“颤振方法-小部件被认为是反模式”的信息。但为什么?元素不关心小部件的参数(是否相等)。只有 const 小部件保存重建。那么为什么我必须将它们分成相对冗长的类,而我可以这样做呢

Widget _buildMe() => Container() // here is some widget, which depends on other params (so it cannot be const)

在我的 StatelessWidget 类中。

更新:我还假设方法不依赖于 InheritedWidget。在那种情况下,很明显,它们应该分开。

【问题讨论】:

  • 你读过this的答案吗?
  • 这不是我问的。 “没有上下文”(不读取元素)与“共享上下文/元素”不同。此外,无论如何都会为您使用的每个小部件创建元素。另外,恕我直言,当卡片标题与卡片共享相同的上下文时 - 没关系。所以我不明白为什么我应该为此定义单独的小部件。它不会阻止重建。

标签: flutter dart


【解决方案1】:

这是一种反模式,因为在某些情况下它会导致不必要的重建(例如,取决于 Inherited 小部件)。但总的来说,如果你明智地使用它,你可以使用它(类中的 2-3 种方法不会造成任何伤害)。

【讨论】:

    猜你喜欢
    • 2020-09-16
    • 2010-09-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-08-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多