为子窗口小部件选择 StatelessWidget 或 StatefulWidget,子窗口小部件具有 TextEditingController 作为子窗口小部件

Choosing StatelessWidget or StatefulWidget for sub-widget which has TextEditingController as a child

我正在重构代码以分离小部件。 them.I 中有几列 TextFields 有两个选项可以完成任务:

  1. 选择 StatelessWidget 因为它具有 更高的性能,可能会将 TextEditingController 相关代码放在子小部件之外。或者在 onChanged 事件中包含一些逻辑。但仍然有一些事件,例如 clear text 无法放入 onChanged 事件

  2. 如果我使用 TextEditingController 选择 StatefulWidget 包含在每个子小部件中。

将代码重构成这样的小部件时,如何在StatelessWidgetStatefulWidget之间做出选择?


更新

这是我目前的结论,如果不正确,可以更新。

针对评论区的讨论进行编辑:

将代码重构为更小的 StatefulWidgets 时,您应该采用第二种方法。并且 parent 应该有一个函数来改变嵌套的 TextFields 的内容及其 animation 行为,通过调用其中的函数,正如您之前指出的,您需要管理此行为。