我正在使用 Cubit 来开发我的平台。我有一个自定义表单来编辑记录。
所有的 TextFormFields 都会收到一个初始值。
我的问题是当用户完成编辑每个 TextFormField 时,我需要更新我的肘部的状态。
我不能使用 onChanged 因为每次更新状态时 TextFormField 都会失去焦点。
我不能使用 onSaved 因为它只是更新最后一个 TextFormField 的值,因为状态是如何更新的。它需要在编辑每个字段后更新,而不是在编辑所有字段后更新。
我的最后一个选项是使用 onFieldSubmitted,因为它会在用户停止编辑每个字段时运行。它仅在用户按 ENTER 时运行,但我需要在失去焦点时运行它。
如果您认为代码会有所帮助,请告诉我,我会添加它。
更新
问题不在于状态变化。
我正在使用 Stepper 小部件,并且步数会根据某些输入而变化。
当它改变时,我得到这个错误“widget.steps.length == oldWidget.steps.length”来解决它我每次调用它时都给它一个随机键。
正因为如此,焦点就失去了。