vue-pull-to

⚡️ A pull-down refresh and pull-up load more and infinite scroll component for Vue.js --Vue下拉刷新组件

Github星跟踪图

Vue-Pull-To

A pull-down refresh and pull-up load more and infinite scroll component for Vue.js.

zh-CN中文文档

Build Status
Coverage Status
GitHub issues
GitHub stars
GitHub license
npm

Live Examples

examples

Installation

 npm install vue-pull-to --save

Usage

<template>
  <div>
    <pull-to :top-load-method="refresh">
      <ul v-for="item in dataList">
        <li>{{ item }}</li>
      </ul>
    </pull-to>
  </div> 
</template>

<script>
  import PullTo from 'vue-pull-to'
  import { fetchDataList } from 'api'
  
  export default {
    name: 'example',
    components: {
      PullTo
    },
    data() {
      return {
        dataList: []
      }
    },
    methods: {
      refresh(loaded) {
       fetchDataList()
        .then((res) => {
          this.dataList = res.data.dataList
          loaded('done')
        })
      }
    }
  }
</script>

The component will occupy 100% height of the parent element by default. props top-load-method and bottom-load-method will default to a loaded parameter, which is a function that changes the state of the component's load, and must be called once loaded. The component will always be loaded, if loaded('done') The internal state of the component will become a successful state of loading, loaded('fail') for the failure.

More usage examples

API Docs

props, Attribute, Description, type, Default, ---, ---, ---, ---, distance-index, Slip the threshold (the greater the value the slower the sliding), Number, 2, top-block-height, The height of the block element area outside the top of the scroll container, Number, 50, bottom-block-height, The height of the block element area outside the scrolling container, Number, 50, wrapper-height, The height of the scrolling container, String, '100%', top-load-method, Top drop-down method, Function, bottom-load-method, Bottom pull-up method, Function, is-throttle-top-pull, Whether the disable of the top-pull throttle event is triggered to ensure performance if the real-time trigger is set to false, Boolean, true, is-throttle-bottom-pull, Whether the disable of the bottom-pull throttle event is triggered to ensure performance if the real-time trigger is set to false, Boolean, true, is-throttle-scroll, Whether the disable of the scroll throttle event is triggered to ensure performance if the real-time trigger is set to false, Boolean, true, is-touch-sensitive, Whether to handle touch events, Boolean, true, is-scroll-sensitive, Whether to handle scroll events, Boolean, true, is-top-bounce, Whether to enable the pull-down bounce effect, Boolean, true, is-bottom-bounce, Whether to enable the pull-up bounce effect, Boolean, true, is-bottom-keep-scroll, Whether to make the scroll container stay in place after completing the pull-down method, Boolean, false, top-config, Configuration for the topmost part of the scroll container, Object, default config, bottom-config, Configuration for the bottommost part of the scroll container, Object, default config, topConfig and bottomConfig Configurable options and default configuration item values

const TOP_DEFAULT_CONFIG = {
  pullText: '下拉刷新', // The text is displayed when you pull down
  triggerText: '释放更新', // The text that appears when the trigger distance is pulled down
  loadingText: '加载中...', // The text in the load
  doneText: '加载完成', // Load the finished text
  failText: '加载失败', // Load failed text
  loadedStayTime: 400, // Time to stay after loading ms
  stayDistance: 50, // Trigger the distance after the refresh
  triggerDistance: 70 // Pull down the trigger to trigger the distance
}

const BOTTOM_DEFAULT_CONFIG = {
  pullText: '上拉加载',
  triggerText: '释放更新',
  loadingText: '加载中...',
  doneText: '加载完成',
  failText: '加载失败',
  loadedStayTime: 400,
  stayDistance: 50,
  triggerDistance: 70
}

slots, Name, Description, scope, ---, ---, ---, default, The default slot scrolls the contents of the container, top-block, Scroll the contents of the top of the container outer (support the scope slot need to use template tag with scope attribute), state:Current state、state-text:State corresponding to the text, bottom-block, Scroll the contents of the bottom of the container outer (support the scope slot need to use template tag with scope attribute), state:Current state、state-text:State corresponding to the text, ### events, name, Description, ---, ---, top-state-change, When the top state has changed, the first parameter is the current state, bottom-state-change, When the bottom state has changed, the first parameter is the current state, top-pull, Pull down the trigger, the first parameter for the current pull of the distance value, the default will be throttle, config isThrottle to real-time trigger, bottom-pull, Pull up the trigger, the first parameter for the current pull of the distance value, the default will be throttle, config isThrottle to real-time trigger, infinite-scroll, Triggered when the scroll container scrolls to the end, scroll, When scrolling, the event callback function, the first parameter, is the native event object

主要指标

概览
名称与所有者stackjie/vue-pull-to
主编程语言JavaScript
编程语言JavaScript (语言数: 2)
平台
许可证MIT License
所有者活动
创建于2017-04-02 09:21:21
推送于2023-04-21 01:54:28
最后一次提交2020-09-24 09:36:23
发布数1
最新版本名称v0.0.1 (发布于 )
第一版名称v0.0.1 (发布于 )
用户参与
星数745
关注者数19
派生数208
提交数246
已启用问题?
问题数79
打开的问题数34
拉请求数15
打开的拉请求数28
关闭的拉请求数10
项目设置
已启用Wiki?
已存档?
是复刻?
已锁定?
是镜像?
是私有?