我正在重构代码以分离一小块小部件。每一个都有几列TextFields
。我有两个选项来完成任务:
选择
StatelessWidget
,因为它具有更高的性能,可能会将 TextEditingController 相关代码放在子小部件之外。onChanged
或者在事件中包含一些逻辑。但是仍然有一些事件,例如clear text
无法放入onChanged
事件选择我是否在每个子小部件中
StatefulWidget
使用包含。TextEditingController
如何在将代码重构为这样的小部件之间StatelessWidget
以及何时进行选择?StatefulWidget
更新
这是我目前的结论,如果不正确,可以更新。
- 更喜欢放在parent
FocusNode
中TextEdit
,因为它与兄弟 focusNode 和 parentNode 相关; - 更喜欢放入父级,这在诸如滚动到屏幕外的
TextEdtingController
情况下很有用,这将使整个小部件卸载。状态将被保留。TextField
ListItem
- 当自己输入错误时,更喜欢
animation self
像摇晃一样。TextField
因为它是TextField
与父母无关的特征。