Skip to content

Waterfall 瀑布流 ​

将项目按高度分配到两列,支持图片、自定义内容和分页加载。

支持平台 ​

以下为官网文档所列的平台支持情况,具体功能及版本限制请参见本页的平台说明。

App-vueApp-nvue微信小程序支付宝小程序百度小程序字节小程序QQ小程序H5PC快手小程序钉钉小程序
✓✓✓✓✓✓✓✓✓✓✓

基础用法 ​

vue
<!-- 双列瀑布流 -->
<fui-waterfall ref="waterfallRef">
  <!-- 列表项,id 需稳定且唯一 -->
  <fui-waterfall-item v-for="item in items" :key="item.id" :src="item.src" :param="item.id">
    <text>{{ item.title }}</text>
  </fui-waterfall-item>
</fui-waterfall>

在页面数据中定义 items。图片高度自适应时组件会等待图片加载后测量,固定高度可使用 imgHeight。

容器属性 ​

属性类型说明官网默认值
columnGapNumber / String两列水平间距,单位 rpx24
topGapNumber / String项目垂直间距,单位 rpx24
leftGapNumber / String列表左侧间距,单位 rpx0
rightGapNumber / String列表右侧间距,单位 rpx0
isBeforeBoolean是否在数组开头插入数据false

isBefore 为 true 时应为每个项目提供稳定、唯一的 key,不能使用数组索引。

列表项属性 ​

属性类型说明官网默认值
backgroundString项目背景色#FFFFFF
radiusNumber / String项目圆角,单位 rpx16
allRadiusBoolean图片是否使用完整圆角false
srcString图片地址;需要显示图片时必传-
imgWidthNumber / String图片宽度,0 使用列宽,单位 rpx0
imgHeightNumber / String固定图片高度,0 为自适应,单位 rpx0
webpBoolean是否解析网络 WebP 图片false
draggableBoolean是否允许拖动图片true
paramNumber / String点击事件携带的参数0

官网 V2.5 的 allRadius 在当前本地组件中未声明;图片默认仅设置顶部圆角。

事件 ​

事件说明回调参数
init(容器)初始化完成{ itemWidth },单位 px
end(容器)当前页项目渲染完成{}
click(项目)点击瀑布流项目{ param }

下拉刷新并替换列表前,可通过容器实例调用 resetLoadmore() 重置布局。webp 和 draggable 的支持情况取决于目标平台版本。

插槽 ​

插槽说明
default放置瀑布流项目