HarmonyOS 鸿蒙Next关于对“LazyForEach键值生成规则”的疑问

发布于 1周前 作者 songsunli 来自 鸿蒙OS

HarmonyOS 鸿蒙Next关于对“LazyForEach键值生成规则”的疑问

关于官方文档(官方链接:https://developer.huawei.com/consumer/cn/doc/harmonyos-faqs-V5/faqs-arkui-219-V5)中对“ForEach/LazyForEach键值生成规则是怎样的”描述中的第二点:

2.如果keyGenerator没有缺省且未包含index,当itemGenerator中包含index,生成的规则是自定义键值与index拼接成的字符串,如(item)=>item+2 对应的键值是 index+’_’+(item+2),如果itemGenerator中未包含index,此时keyGenerator的生成规则是由开发者自定义的键值生成规则。

经过测试发现这条规则对于LazyForEach不适用,测试情况和说明如下图:

请各位指点迷津… 感谢各位!!!

1 回复

关于HarmonyOS鸿蒙Next的LazyForEach键值生成规则,系统在每次迭代中会为每个item生成一个唯一且持久的键值,用于标识对应的组件。开发者可以通过keyGenerator参数自定义键值的生成规则。如果未定义,则ArkUI框架会使用默认规则生成键值,通常包含viewId和index。键值生成规则需确保唯一性,以避免UI渲染问题。

LazyForEach在滚动容器中按需创建组件,优化内存使用。若问题依旧没法解决,请加我微信,我的微信是itying888。

回到顶部