1. 简介
本文针对应用开发中相当常见的瀑布流页面场景,基于按需渲染、组件复用等技术,使用RN框架实现了高性能瀑布流页面。本文提供详细的开发步骤,帮助开发人员高效实现高性能瀑布流页面。
1.1 基本概念
瀑布流:瀑布流布局在应用开发中非常常见。它利用容器的布局规则,将元素项目从上到下排列,形成多列参差不齐、不断加载的效果,使内容像瀑布般倾泻而下。由于其特点,瀑布流常用于展示图片资讯、购物商品和直播视频等多种数据形式。在上下滑动时,由于具备无限加载的特性,瀑布流可以展示大量内容,然而大小不一的子元素会增加测量和绘制的性能消耗。
RN:React Native(RN)是一个跨平台移动应用的开源框架,具有高性能和丰富组件库。许多主流应用使用RN开发瀑布流页面,如携程、华为商城等,这些应用利用RN的灵活性和高效性能,实现了图片和视频等内容的不规则布局展示。
1.2 典型场景
相较于传统的格子式布局,瀑布流页面看起来更加紧凑和丰满。逐块填充的方式,让布局比较灵活、动态,因而能够提升信息的密集度和丰富度。通过内容的巧妙编排,瀑布流布局可以让视觉焦点自觉且持续下移,促使用户自然而然低滚动查看更多内容,这种布局形式现在广泛应用于社交媒体、电商、影音娱乐等APP。
开发瀑布流页面时,通常会面临数据量不固定、页面卡片高度不