flutter清除缓存 map遍历Widget 遍历数据有缓存

2020-03-29  本文已影响0人  天渺工作室
image

image.gif

查看Widget 的源码 就能发现Widget 视视图更新时候的判断机制 缓存现象多出现在数据遍历生成Widget的情况下

oldWidget.runtimeType == newWidget.runtimeType 
image.gif

官方默认用runtimeType 编译时间来判断 明显不好

官方的建议是不能用list 的索引数值 来做key 那么 最好办法还是用数据的唯一ID 或者生成一个永不重复的随机数

不建议永时间戳当key 因为循环的速度比时间戳速队快 肯定肯会出问题

image

image.gif
Container(
      key:Key("${唯一ID}"),
)
image.gif
上一篇 下一篇

猜你喜欢

热点阅读