vant 使用PullRefresh 下拉刷新组件时,无论滚动条在哪,总会触发下拉滚动

2 篇文章 0 订阅

今天遇到个问题,使用PullRefresh组件时,无论滚动条滚动到哪里,只要页面向下拉,页面的滚动条都还没到顶就触发下拉刷新
在网上找了一下,可终于找到方法了

.van-pull-refresh { 
	height: calc(100vh - 100px) !important;
 	overflow: auto !important;
} 
.van-list { height: auto !important; }

这样就可以实现解决问题了

  • 7
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 5
    评论
下面是一个使用 Vant Weapp 实现下拉刷新和上拉加载的完整示例: 1. 在小程序的页面文件中引入 Vant Weapp 的相关组件和样式: ```html <view> <!-- 引入下拉刷新组件 --> <van-refresh bind:refresh="onRefresh" bind:refreshing="isRefreshing" bind:refreshed="onRefreshed" > <!-- 下拉刷新内容 --> <van-loading slot="top" size="20px" type="circular" color="#1989fa" /> </van-refresh> <!-- 列表内容 --> <scroll-view scroll-y="{{true}}" bind:scrolltolower="onScrollToLower" > <!-- 列表项 --> <view wx:for="{{list}}" wx:key="index"> <!-- 列表项内容 --> </view> <!-- 上拉加载提示 --> <van-loading wx:if="{{isLoading}}" size="20px" type="circular" color="#1989fa" custom-class="loading" ></van-loading> </scroll-view> </view> ``` 2. 在页面的 JavaScript 文件中定义相关函数和数据: ```javascript Page({ data: { list: [], // 列表数据 isLoading: false, // 是否正在加载 isRefreshing: false // 是否正在刷新 }, onLoad() { this.loadData(); // 页面加载加载数据 }, // 下拉刷新事件 onRefresh() { if (this.data.isRefreshing) return; this.setData({ isRefreshing: true }); // 模拟请求数据 setTimeout(() => { this.loadData(); this.setData({ isRefreshing: false }); }, 1000); }, // 上拉加载事件 onScrollToLower() { if (this.data.isLoading) return; this.setData({ isLoading: true }); // 模拟请求数据 setTimeout(() => { this.loadData(); this.setData({ isLoading: false }); }, 1000); }, // 加载数据 loadData() { // 模拟请求数据 const newData = []; // 新的数据 this.setData({ list: this.data.list.concat(newData) }); } }) ``` 在上面的示例中,`van-refresh` 组件用来实现下拉刷新功能,`van-loading` 组件用来显示加载状态。通过绑定相关事件和数据,当用户进行下拉刷新或上拉加载操作,会触发相应的函数进行数据的请求和处理。 注意:以上代码只是一个示例,具体的实现方式可能会根据你的项目需求和页面结构有所不同。你可以根据 Vant Weapp 的文档和示例进行更详细的配置和定制。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值