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-method和bottom-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-pull和bottom-pull自定义事件的触发以保证性能 Boolean true
top-config 滚动容器顶部信息的一些配置 Object 默认配置
bottom-config 滚动容器底部信息的一些配置 Object 默认配置

topConfig和bottomConfig可配置的选项和默认配置项的值

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. MCU_数码管常用表

    共阴极数码管编码(0---F) unsigned char code table[]={ 0x3f,0x06,0x5d,0x4f, 0x66,0x6d,0x77,0x7c, 0x39,0x5e,0x7 ...

  2. cxGrid实现取消过滤和排序后定位到首行(单选和多选)

    cxGrid实现取消过滤和排序后定位到首行(单选和多选) 原创 2013年10月06日 18:42:24 2107 DataContoller中的函数FocusedRecordIndex没有反应,Fo ...

  3. delphi 小数点四舍五入问题

    function ARoundN(v: Double; n: Integer): Double; var I:Integer; begin result:=v; do begin result:=re ...

  4. 【VB6】全局键盘钩子

    基本也没啥好说的,不要用到木马及恶意程序中是以前从VB.NET程序改到VB6的,阉割了一些功能,只提供键盘Hook功能想要截获热键可以在处理函数中返回1,里面有示例 下载地址 http://pan.b ...

  5. [翻译]Elasticsearch重要文章之四:监控每个节点(jvm部分)

    http://zhaoyanblog.com/archives/753.html 操作系统和进程部分 操作系统和进程部分的含义是很清楚的,这里不会描述的很详细.他们列出了基本的资源统计,例如CPU和负 ...

  6. [Vue] vue-cli3.0安装

    1. node.js安装https://nodejs.org/en/download/ 2.npm的安装 由于新版的nodejs已经集成了npm,所以之前npm也一并安装好了.同样可以通过输入 &qu ...

  7. Swift5 语言参考(三) 类型

    在Swift中,有两种类型:命名类型和复合类型.一个名为类型是当它的定义可以给出一个特定名称的类型.命名类型包括类,结构,枚举和协议.例如,名为的用户定义类的实例MyClass具有该类型MyClass ...

  8. Docker三剑客之Docker Machine

    一.什么是Docker Machine Docker Machine 是Docker官方编排项目之一,使用go语言编写的,使用不同引擎在多种平台上快速的安装Docker环境,开源地址:https:// ...

  9. POJ 2521

    #include <iostream> #include <stdio.h> using namespace std; int main() { //freopen(" ...

  10. redis入门概述

    一.是什么 redis:REmote  DIctionary Server(远程字典服务器).是完全开源免费的,是用C语言编写的,遵守BSD协议,是一个高性能(key/value)分布式内存数据库,基 ...