判断题
1. ForEach提供了一个名为keyGenerator的参数,可以自定义键值的生成规则。如果没有定义keyGenerator函数,则ArkUI框架会使用默认的键值生成函数。
A、正确(True) B、错误(False)
2. 在初始化渲染时,ForEach会加载数据源的所有数据。如果数据源非常大或有特定的性能需求,建议使用LazyForEach。
A、正确(True) B、错误(False)
单选题
1. 关于组件复用,以下说法错误的是:
A. 标记为@Reusable的组件从组件树上被移除时,组件和其对应的JSView对象都会被放入复用缓存中。
B. 当列表滑动新的ListItem将要被显示,List组件树上需要新建节点时,将会从复用缓存中查找可复用的组件节点。
C. 找到可复用节点并对其进行更新后添加到组件树中。从而节省了组件节点和JSView对象的创建时间。
D. 可以通过设置cachedCount来指定缓存数量实现组件复用。
2. 下列哪项属于精简节点数的方式来优化布局性能。
A. 合理控制元素显示与隐藏
B. 给定组件的宽高
C. 移除冗余节点
D. 以上都不是
多选题
1. 针对长列表加载这一场景,可以采用哪些手段和方法来提升性能和用户体验:
A. 懒加载:提供列表数据按需加载能力,解决一次性加载长列表数据耗时长、占用过多资源的问题,可以提升页面响应速度
B. 缓存列表项:提供屏幕可视区域外列表项长度的自定义调节能力,配合懒加载设置可缓存列表项参数,通过预加载数据提升列表滑动体验。
C. 组件复用:提供可复用组件对象的缓存资源池,通过重复使用已经创建过并缓存的组件对象,降低相同组件短时间内频繁创建和销毁的开销,提升组件渲染效率。
D. 布局优化:使用扁平化布局方案,减少视图嵌套层级和组件数,避免过度绘制,提升页面渲染效率。
答案
A A
D C
ABCD