https://github.com/bedlate/vue-data-loading

Examples

examples

Installation

 npm install vue-pull-to --save

Use Setup

<template>
<div>
<pull-to :top-load-method="refresh">
<ul>
<li>item</li>
<li>item</li>
<li>item</li>
<li>item</li>
<li>item</li>
<li>item</li>
<li>item</li>
<li>item</li>
</ul>
</pull-to>
</div>
</template> <script>
import PullTo from 'vue-pull-to' export default {
name: 'example',
components: {
PullTo
},
methods: {
refresh(loaded) {
setTimeout(() => {
this.dataList.reverse();
loaded('done');
}, 2000);
}
}
}
</script>

组件会默认占据父元素的百分之百高度。props top-load-methodbottom-load-method会默认传进一个loaded参数,该参数是一个改变组件加载状态的函数,必须调用一次loaded不然组件就会一直处于加载状态,如果执行loaded('done')组件内部状态就会变成成功加载的状态,loaded('fail')为失败。

更多使用示例请参考Examples的代码

API Docs

props

属性 说明 类型 默认值
distance-index 滑动的阀值(值越大滑动的速度越慢) Number 2
top-block-height 顶部在滚动容器外的块级元素区域高度 Number 50
bottom-block-height 底部在滚动容器外的块级元素区域高度 Number 50
top-load-method 顶部下拉时执行的方法 Function  
bottom-load-method 底部上拉时执行的方法 Function  
is-throttle 是否截流top-pullbottom-pull自定义事件的触发以保证性能 Boolean true
top-config 滚动容器顶部信息的一些配置 Object 默认配置
bottom-config 滚动容器底部信息的一些配置 Object 默认配置

topConfigbottomConfig可配置的选项和默认配置项的值

const TOP_DEFAULT_CONFIG = {
pullText: '下拉刷新', // 下拉时显示的文字
triggerText: '释放更新', // 下拉到触发距离时显示的文字
loadingText: '加载中...', // 加载中的文字
doneText: '加载完成', // 加载完成的文字
failText: '加载失败', // 加载失败的文字
loadedStayTime: 400, // 加载完后停留的时间ms
stayDistance: 50, // 触发刷新后停留的距离
triggerDistance: 70 // 下拉刷新触发的距离
} const BOTTOM_DEFAULT_CONFIG = {
pullText: '上拉加载',
triggerText: '释放更新',
loadingText: '加载中...',
doneText: '加载完成',
failText: '加载失败',
loadedStayTime: 400,
stayDistance: 50,
triggerDistance: 70
}

slots

名称 说明 scope
default 默认slot滚动容器的内容  
top-block 滚动容器外顶部的内容(支持作用域slot需用template标签加上scope属性) state:当前的状态、state-text:状态对应的文本
bottom-block 滚动容器外底部的内容(支持作用域slot需用template标签加上scope属性) state:当前的状态、state-text:状态对应的文本

events

事件名 说明
top-state-change 顶部状态发生了改变时触发,第一个参数为当前的状态
bottom-state-change 底部状态发生了改变时触发,第一个参数为当前的状态
top-pull 下拉时触发,第一个参数为当前拉动的距离值,默认会被截流,可配置props isThrottle来实时触发
bottom-pull 上拉时触发,第一个参数为当前拉动的距离值,默认会被截流,可配置props isThrottle来实时触发
infinite-scroll 当滚动容器滚动到底部时触发

Vue下拉刷新组件的更多相关文章

  1. Google自己的下拉刷新组件SwipeRefreshLayout

    SwipeRefreshLayout SwipeRefreshLayout字面意思就是下拉刷新的布局,继承自ViewGroup,在support v4兼容包下,但必须把你的support librar ...

  2. Android内置下拉刷新组件SwipeRefreshLayout

    也许下拉刷新之前,你可能会使用一些第三方的开源库,例如PullToRefresh, ActionBar-PullToRefresh等待,但现在有的正式组成部分---SwipeRefreshLayout ...

  3. Google官方下拉刷新组件---SwipeRefreshLayout

    今天在Google+上看到了SwipeRefreshLayout这个名词,遂搜索了下,发现竟然是刚刚google更新sdk新增加的一个widget,于是赶紧抢先体验学习下. SwipeRefreshL ...

  4. 打造通用的Android下拉刷新组件(适用于ListView、GridView等各类View)

    前言 近期在做项目时,使用了一个开源的下拉刷新ListView组件.极其的不稳定,bug还多.稳定的组件又写得太复杂了,jar包较大.在我的一篇博客中也讲述过下拉刷新的实现,即Android打造(Li ...

  5. SuperSwipeRefreshLayout 一个功能强大的自己定义下拉刷新组件

    SuperSwipeRefreshLayout 一个功能强大的自己定义下拉刷新组件. Why? 下拉刷新这样的控件.想必大家用的太多了,比方使用非常多的XListView等. 近期.项目中非常多列表都 ...

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

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

  7. vue-上拉加载、下拉刷新组件

    vue在移动端开发过程中,上拉加载.下拉刷新是页面的基本需求,现在给大家介绍一种基于touch事件封装的刷新组件. 组件支持传参.传递事件.请求成功异步回调.上拉与触底触发加载或刷新. 父子组件间的通 ...

  8. 分享一个discuz touch端的jQuery下拉刷新组件

    在线Demo 最近装了个discuz论坛, 趣股VIP吧,发现里面内置的jQuery上拉刷新组件写得还行,STATICURL可以用'http://o9gzet7tk.bkt.clouddn.com/i ...

  9. android之官方下拉刷新组件SwipeRefreshLayout

    1.setOnRefreshListener(SwipeRefreshLayout.OnRefreshListener listener):设置手势滑动监听器. 2.setProgressBackgr ...

随机推荐

  1. linux命令 find的应用

    1.列出当前目录及子目录下所有文件和文件夹 2.在 /home目录下查找以 “.txt”结尾的文件名 3.在当前目录下查找所有以“.txt”结尾的文件 4基于目录深度搜索(向下最大深度限制为3) 5. ...

  2. cnn的说明

    概述 前面的练习中,解决了一些有关低分辨率图像的问题,比如:小块图像,手写数字小幅图像等.在这部分中,我们将把已知的方法扩展到实际应用中更加常见的大图像数据集. 全联通网络 在稀疏自编码章节中,我们介 ...

  3. node-webkit学习(2)基本结构和配置

    node-webkit学习(2)基本结构和配置 文/玄魂 目录 node webkit学习(2)基本结构和配置 前言 2.1  基本程序结构 2.2  package.json 2.2.1 必须的配置 ...

  4. Linux下可视化空间分析工具ncdu

    场景:磁盘空间占满后快速查找某个目录(子目录)占用空间大. ncdu /var (分析后按左右键查看即可)

  5. Abp添加菜单

    Abp添加菜单 在abp模板中添加菜单,EntityFramework+Angular.js模板,使用的Abp版本为3.8.1. 创建Abp项目模板,例如名称叫做LawAndRegulation. 服 ...

  6. c# 数据写入三菱PLC

    public void Data_Write_Value(int[] m_write_data)        {            int lSize = 2; string[] Address ...

  7. Html Agility Pack解析Html(C#爬虫利器)

    有个需求要写网络爬虫,以前接触过一个叫Html Agility Pack这个解析html的库,这次又要用到,然而发现以前咋用的已经不记得了,现在从头开始记录一下使用过程. Html Agility P ...

  8. Servlet初步认知

    1 背景概述 在近期的公司项目开发的过程中,笔者初步学习Servlet的开发.配置与使用,本文主要介绍了Servlet的相关概念以及优势说明并附上笔者开发简单样例.今天将笔者学习的心得总结出来与大家分 ...

  9. MQ的demo

    public class WorkTest {  @Test  public void send() throws Exception{    //获取连接    Connection conn = ...

  10. java多线程面试题整理及答案(2018年)

    1) 什么是线程? 线程是操作系统能够进行运算调度的最小单位,它被包含在进程之中,是进程中的实际运作单位.程序员可以通过它进行多处理器编程,你可以使用多线程对 运算密集型任务提速.比如,如果一个线程完 ...