flutter 中的 `FocusScope.of(context).unfocus()` 和 `FocusManager.instance.primaryFocus?.unfocus()` 有什么区别?

Bis*_*iso 5 focus textfield uitextfield dart flutter

使用时FocusScope.of(context).unfocus()出现了屏幕重建后数据消失的bug。

FocusScope.of(context).unfocus()我通过修改->修复了该错误FocusManager.instance.primaryFocus?.unfocus()

但我仍然想知道这两个代码之间的区别

谢谢

use*_*290 2

FocusManager.instance.primaryFocus属性包含当前聚焦的焦点节点,可以独立于 进行全局访问context

FocusScope.of(context)返回最紧密包围给定上下文的 FocusScope 的 FocusScopeNode。调用此函数会创建一个依赖项,该依赖项将在焦点更改时重建给定的上下文。