Flutter的Local Key和Global Key

一、Local Key

局部key,包含三种类型的key:ValueKeyObjectKeyUniqueKey
1、ValueKey通过ValueKey的值来对比。
2、ObjectKey 以Object对象作为Key,通过指针地址来对比。
3、UniqueKey唯一的,可以保证Key的唯一性。使用之后就不存在Element的复用了,因为每次都是不同的。

二、Global Key

全局key,GlobalKey可以获取到对应的Widget的State对象!
当我们页面内容很多时,而需要改变的内容只有很少的一部分且在树的底层的时候,我们通常情况下有两种方式,第一种是通过方法的回调,去实现数据更新,第二种是通过GlobalKey,在StatelessWidget引用StatefulWidget。

你可能感兴趣的:(Flutter的Local Key和Global Key)