更新记录
1.0.1(2024-12-25)
下载此版本
兼容h5,添加数据更新和渲染结束事件
1.0.0(2024-12-25)
下载此版本
实现简单好用的瀑布流
平台兼容性
App |
快应用 |
微信小程序 |
支付宝小程序 |
百度小程序 |
字节小程序 |
QQ小程序 |
HBuilderX 4.15 app-vue |
× |
√ |
× |
× |
× |
× |
钉钉小程序 |
快手小程序 |
飞书小程序 |
京东小程序 |
鸿蒙元服务 |
× |
× |
× |
× |
× |
H5-Safari |
Android Browser |
微信浏览器(Android) |
QQ浏览器(Android) |
Chrome |
IE |
Edge |
Firefox |
PC-Safari |
√ |
× |
√ |
× |
√ |
× |
× |
× |
√ |
瀑布流插件
本插件采用相对定位实现瀑布流效果
属性 |
类型 |
默认值 |
说明 |
column |
Number |
2 |
瀑布流分栏 |
gap |
Nubmer |
20 |
块之间的距离(rpx) |
autoLoad |
Boolean |
true |
是否自动加载块的高度,如果需要加载图片,设置false,在图片load事件调用api |
<template>
<view class="container">
<waterfall ref="waterfall" @onRenderEnd="">
<template v-slot:default="{list}">
<waterfall-item v-for="(item, index) in list" :key="index" :autoLoad="false" :top="item.top" :left="item.left"
:width="item.width" :visible="item.visible" :load="item.load" @shaping="onShaping($event, index)">
<!-- 自定义内容区域 -->
<view class="card" @click="onAdd(index, item)">
<view class="picture">
<image :src="item.picture" mode="widthFix" @load="onLoadImg(index)"></image>
</view>
<view class="content">
{{index}}-{{item.text}}
</view>
<view>{{item.count}}</view>
</view>
</waterfall-item>
</template>
</waterfall>
</view>
</template>
<script>
import Waterfall from '@/uni_modules/bingo-waterfall/components/bingo-waterfall/waterfall.vue';
import WaterfallItem from '@/uni_modules/bingo-waterfall/components/bingo-waterfall/waterfall-item.vue';
export default {
onPullDownRefresh() {
this.$refs.waterfall.onReset();
this.fetchList();
},
onReachBottom() {
this.fetchList();
},
methods: {
fetchList() {
const list = [];
const type = 'reset'; // reset:初次加载数据 inset:插入数据
this.$refs.waterfall.onInject(list, type);
},
onShaping(height, index) {
this.$refs.waterfall.onUpdateHeight(height, index);
},
onLoadImg(index) {
// 仅在autoLoad为false时调用
this.$refs.waterfall.onLoadItem(index);
},
onAdd(index, record) {
record.count += 1;
this.$refs.waterfall.onUpdateItem(index, record);
},
() {
uni.stopPullDownRefresh();
uni.hideLoading();
}
},
components: {
Waterfall,
WaterfallItem
}
}
</script>
完美支持上拉加载更多和下拉刷新