前端vue简单好用的上拉加载下拉刷新组件,支持列表分页 本地分页, 下载完整代码请访问uni-app插件市场地址: https://ext.dcloud.net.cn/plugin?id=12942

效果图如下:

 

 

 

#### 使用方法

```使用方法

<!-- pullDown:下拉刷新 back-top: 回到顶部  -->

<ccPullScroll class="pullScrollView" ref="pullScroll" :back-top="true" :pullDown="pullDown">

</ccPullScroll>

```

#### HTML代码部分

```html

<template>

<view class="content">

<!--  -->

<div class="mui-content-padded">

<!-- pullDown:下拉刷新 back-top: 回到顶部  -->

<ccPullScroll class="pullScrollView" ref="pullScroll" :back-top="true" :pullDown="pullDown">

<!-- 列表组件 -->

<CCBProjectList :productList="projectList" @click="goProDetail"></CCBProjectList>

</ccPullScroll>

</div>

</view>

</template>

```

#### JS代码 (引入组件 填充数据)

```javascript

<script>

import CCBProjectList from '../../components/ccPageView/CCProjectList.vue';

import ccPullScroll from '../../components/ccPullScroll/index.vue'

export default {

components: {

CCBProjectList,

ccPullScroll

},

data() {

return {

// 列表总数量

totalNum: 60,

//  页码 默认1开始

curPageNum: 1,

// 列表数组

projectList: []

}

},

mounted() {

// 页面刷新方法 会自动调用pulldown一次

this.pageRefresh();

},

methods: {

pageRefresh() {

let myThis = this;

this.$nextTick(() => {

myThis.$refs.pullScroll.refresh();

});

},

pullDown(pullScroll) {

console.log('下拉刷新');

this.projectList = [];

this.curPageNum = 1;

setTimeout(() => {

this.requestData(pullScroll);

}, 300);

},

// 上拉加载

onReachBottom() {

// 数据全部加载完

if (this.curPageNum * 10 >= this.totalNum) {

} else {

this.curPageNum++;

this.requestData();

}

},

// 列表条目点击事件

goProDetail(item) {

},

requestData() {

// 模拟请求参数设置

let reqData = {

'area': '',

"pageSize": 10,

"pageNo": this.curPageNum

}

let myThis = this;

setTimeout(function() {

// 模拟请求接口

for (let i = 0; i < 10; i++) {

myThis.projectList.push({

'proName': '产品名称' + i,

'proUnit': '公司名称' + i,

'area': '广东省',

'proType': '省级项目',

'stage': '已开工',

'id': 10 * (myThis.curPageNum + i) + myThis.curPageNum + ''

});

}

// 列表总数量

myThis.totalNum = 60;

// 如果是最后一页

if (myThis.curPageNum * 10 >= myThis.totalNum) {

myThis.$refs.pullScroll.finish();

} else {

// 不是最后一页

myThis.$refs.pullScroll.success();

}

}, 600);

}

}

}

</script>

```

#### CSS

```css

<style>

page {

}

.content {

display: flex;

flex-direction: column;

}

.mui-content-padded {

margin: 0px 14px;

/* */

}

.pullScrollView {

display: flex;

flex-direction: column;

}

</style>

```

前端vue简单好用的上拉加载下拉刷新组件,支持列表分页 本地分页的更多相关文章

  1. Vue mint ui用在消息页面上拉加载下拉刷新loadmore 标记

    之前总结过一个页面存在多个下拉加载的处理方式,今天再来说一下在消息页面的上拉加载和下拉刷新,基本上每个app都会有消息页面,会遇到这个需求 需求:每次加载十条数据,上拉加载下拉刷新,并且没有点击查看过 ...

  2. 上拉加载下拉刷新控件WaterRefreshLoadMoreView

    上拉加载下拉刷新控件WaterRefreshLoadMoreView 效果: 源码: // // SRSlimeView // @author SR // Modified by JunHan on ...

  3. RecyclerView 上拉加载下拉刷新

    RecyclerView 上拉加载下拉刷新 <android.support.v4.widget.SwipeRefreshLayout android:id="@+id/teach_s ...

  4. APICloud上啦加载下拉刷新模块

    apicloud有自带的上啦加载下拉刷新,当让也可以用第三方或者在模块库里面找一个使用 一.下拉刷新,一下代码写在 apiready = function (){} 里面 apiready = fun ...

  5. 微信小程序上拉加载下拉刷新

    微信小程序实现上拉加载下拉刷新 使用小程序默认提供方法. (1). 在xxx.json 中开启下拉刷新,需要设置backgroundColor,或者是backgroundTextStyle ,因为加载 ...

  6. mui scroll和上拉加载/下拉刷新

    mui中 scroll和上拉加载/下拉刷新同时存在会出现两个滚动条 把/*   */ /* //mui页面鼠标拖动代码: mui('.mui-scroll-wrapper').scroll({ dec ...

  7. js上拉加载下拉刷新

    写在前边: 工作需要,使用ajax在原来的列表下边使用ajax请求后台数据,拼接在列表最下边,在github转了好久,发现了一个bug极多的js刷新插件,尝试了一个下午,就在快放弃的时候,发现下边有留 ...

  8. SwipeRefreshLayout实现上拉加载下拉刷新

    package com.example.swiperefreshlayoutdemo; import java.util.ArrayList;import java.util.HashMap; imp ...

  9. Flutter上拉加载下拉刷新---flutter_easyrefresh

    前言 Flutter默认不支持上拉加载,下拉刷新也仅仅支持Material的一种样式.Android开发使用过SmartRefreshLayout的小伙伴都知道这是一个强大的刷新UI库,集成了很多出色 ...

  10. 基于better-scroll封装一个上拉加载下拉刷新组件

    1.起因 上拉加载和下拉刷新在移动端项目中是很常见的需求,遂自己便基于better-scroll封装了一个下拉刷新上拉加载组件. 2.过程 better-scroll是目前比较好用的开源滚动库,提供很 ...

随机推荐

  1. 最新centos7 部署 k8s v1.26,简单易懂,跟着命令敲就完事

    其实没什么好说的,搭环境搞了一整天,人已经麻了,踩了很多坑,网上教程的版本大都比较旧,总是和最新版本各种地方不兼容,把坑踩完了,k8s目前最新的版本是v1.26,跟着命令敲就行了,我已经重复部署了很多 ...

  2. 在Kubernetes上安装Netdata的方法

    介绍 Netdata可用于监视kubernetes集群并显示有关集群的信息,包括节点内存使用率.CPU.网络等,简单的说,Netdata仪表板可让您全面了解Kubernetes集群,包括在每个节点上运 ...

  3. 这个小项目,上周被国外 AI 新闻网站报道,前些天又上了 github 热榜

    疫情期间在校花了几个月时间,写了这个小项目,是关于音频特征提取和分析的,自己是 AI 专业研究音频的,但受限于对音频特征的理解,做研究时总感觉缺乏"底料",所以当做是学习练手做了这 ...

  4. ChatGPT 和 Midjourney 初体验

    ChatGPT 和 Midjourney 这两个系统这些天红的发紫,自己也尝试着注册和使用了一下. 一.ChatGPT 我在上周才刚刚注册 OpenAI,注册过程也比较麻烦. 国内的 IP 是无法访问 ...

  5. Active Record 活动记录

    ActiveRecord活动记录类 一.声明AR类(模型层) namespaceapp\models; useyii\db\ActiveRecord; classCustomer extends Ac ...

  6. django渲染模版时比实际少了8小时?

    这是因为django的时间是UTC时间. 我们通过改配置文件将其改成本地时间 修改配置文件 # 将时间从UTC转化成当前时间 TIME_ZONE = 'Asia/Shanghai' # USE_TZ ...

  7. boot-admin整合flowable官方editor-app进行BPMN2.0建模

    正所谓百家争鸣.见仁见智.众说纷纭.各有千秋!在工作流bpmn2.0可视化建模工具实现的细分领域,网上扑面而来的是 bpmn.js 这个渲染工具包和web建模器,而笔者却认为使用flowable官方开 ...

  8. 迁移学习(PAT)《Pairwise Adversarial Training for Unsupervised Class-imbalanced Domain Adaptation》

    论文信息 论文标题:Pairwise Adversarial Training for Unsupervised Class-imbalanced Domain Adaptation论文作者:Weil ...

  9. js给元素设置样式

    一.style 利用 "[元素].style.[CSS属性名] = [属性值]" 的方法 1 var Box = document.getElementById('box') 2 ...

  10. 深度学习-08(PaddlePaddle文本分类)

    深度学习-08(PaddlePaddle文本分类) 文章目录 深度学习-08(PaddlePaddle文本分类) NLP概述 NLP基本概念 什么是NLP NLP的主要任务 传统NLP方法 传统NLP ...