Flutter - Key

Flutter中Key非常重要

  • 解决重用问题,提升性能
  • 标识Widget,获取State对象

LocalKey

抽象类

  • diff算法的核心所在
  • Element和Widget比较

ValueKey

以数据作为Key。如:数字,字符

ObjectKey

以Object对象作为Key。如:Text()

UniqueKey

可以保证Key的唯一性

一旦使用它,就不存在Element复用了

GlobalKey

抽象类

  • 帮助我们获取到对应Widget的State对象,然后进行操作。