美文网首页
flutter的key

flutter的key

作者: 今年27 | 来源:发表于2022-11-23 11:04 被阅读0次

    Key本身是一个抽象类,用作diff的核心算法比较Widget。
    -ValueKey 以一个数据作为Key
    -ObjectKey 以Object对象为Key
    -UniqueKey 可以保证Key的唯一性(注意:一旦使用UniqueKey就不存在Element的复用了)
    在widget中有一个能否复用的判断,如果key为null,则只判断类型,会导致各种问题

     static bool canUpdate(Widget oldWidget, Widget newWidget) {
        return oldWidget.runtimeType == newWidget.runtimeType
            && oldWidget.key == newWidget.key;
      }
    

    GlobalKey:
    用来获取指定widget的State对象

    相关文章

      网友评论

          本文标题:flutter的key

          本文链接:https://www.haomeiwen.com/subject/hxqaxdtx.html