mescroll.js上拉加载下拉刷新组件使用详解


Posted in Javascript onNovember 13, 2017

本文实例为大家分享了上拉加载下拉刷新组件mescroll.js的具体代码,供大家参考,具体内容如下

附上链接地址http://www.mescroll.com/api.html#NPM,手机端和浏览器都能够使用,唯一推荐;
使用过程中要注意这些问题http://www.mescroll.com/qa.html;

使用注意事项:

1、引入的时候出问题及时看官方给出的解决方案(基本上都必须看);

2、react中一定要在dom渲染之后的方法(didMount)中初始化,因为这个需要拿到dom对象;

3、在react工程中,回调的数据一定要拼接,这是要注意的(datas:ctx.state.datas.concat(json.info));

4、很坑需要单页的里的html和body高度设置100%。

下边附上简易代码

import React, { Component, PropTypes } from 'react'; 
import MeScroll from "mescroll.js" 
 
class StretchingUp extends Component { 
  constructor(props, context) { 
    super(props, context); 
    this.state={ 
      datas:[], 
      total:0, 
    } 
    this.test = this.test.bind(this); 
  } 
  componentDidMount(){ 
    document.ondragstart=function() {return false;} 
    let ctx = this; 
    var mescroll = new MeScroll ( "mescroll" , {down : { use:false}, up : { 
      use:true, 
      auto:true, 
      offSet:100, 
      page:{ 
        num:0, 
        size:20, 
        time:null 
      }, 
      onScroll:function(mescroll, y, isUp){ 
      }, 
      callback:function (page, mescroll) { 
        ctx.test(page, mescroll); 
      }, 
      error: function (e) { 
      } 
    }} ) ; 
    mescroll.resetUpScroll() 
  } 
  test(page, mescroll){ 
    console.log(page) 
    let url = "http://localhost:5577/curpage/"+page.num+"/pagesize/"+page.size; 
    let ctx = this; 
    fetch(url,{ 
      method:'GET', 
      headers: { 
        'Accept': 'application/json', 
        'Content-Type': 'application/json', 
      }, 
    }).then((resp)=>{ 
      if(resp){ 
        return resp.json(); 
      }else{ 
        return false; 
      } 
    }) 
    .then((json)=>{ 
        ctx.setState({ 
        datas:ctx.state.datas.concat(json.info), 
        total:json.total 
      },()=>{ 
    }) 
 
    mescroll.endSuccess(); 
    return true; 
  }); 
  } 
  render() { 
    return ( 
      <div id="mescroll" className="mescroll" style={{height: "500px",overflow: "auto"}}> 
      {this.state.datas.map((item,index)=>( 
        <div key={index}> 
          {item.id} 
        </div> 
      ))} 
      </div> 
  ); 
  }} 
 
export default StretchingUp;

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
Javascript this关键字使用分析
Oct 21 Javascript
Javascript的构造函数和constructor属性
Jan 09 Javascript
jQuery的实现原理的模拟代码 -2 数据部分
Aug 01 Javascript
jQuery获得页面元素的绝对/相对位置即绝对X,Y坐标
Mar 06 Javascript
体验jQuery和AngularJS的不同点及AngularJS的迷人之处
Feb 02 Javascript
探索Vue高阶组件的使用
Jan 08 Javascript
jQuery实现获取选中复选框的值实例详解
Jun 28 jQuery
Easyui 关闭jquery-easui tab标签页前触发事件的解决方法
Apr 28 jQuery
微信小程序实现类似微信点击语音播放效果
Mar 30 Javascript
JavaScript对象属性操作实例解析
Feb 04 Javascript
JS表单验证插件之数据与逻辑分离操作实例分析【策略模式】
May 01 Javascript
design vue 表格开启列排序的操作
Oct 28 Javascript
Vue.js用法详解
Nov 13 #Javascript
利用HBuilder打包前端开发webapp为apk的方法
Nov 13 #Javascript
JS实现提交表单前的数字及邮箱校检功能
Nov 13 #Javascript
vue 挂载路由到头部导航的方法
Nov 13 #Javascript
详解Vuex管理登录状态
Nov 13 #Javascript
Vue2 配置 Axios api 接口调用文件的方法
Nov 13 #Javascript
React通过父组件传递类名给子组件的实现方法
Nov 13 #Javascript
You might like
自制汽车收音机天线:收听广播的技巧和方法
2021/03/02 无线电
php获取服务器端mac和客户端mac的地址支持WIN/LINUX
2014/05/15 PHP
Joomla使用Apache重写模式的方法
2016/05/04 PHP
关于使用runtimeStyle属性问题讨论文章
2007/03/08 Javascript
jquery 模式对话框终极版实现代码
2009/09/28 Javascript
javascript定时保存表单数据的代码
2011/03/17 Javascript
js设置组合快捷键/tabindex功能的方法
2013/11/21 Javascript
利用a标签自动解析URL分析网址实例
2014/10/20 Javascript
JavaScript中的bold()方法使用详解
2015/06/08 Javascript
判断数组是否包含某个元素的js函数实现方法
2016/05/19 Javascript
JavaScript实现窗口抖动效果
2016/10/19 Javascript
vue封装一个简单的div框选时间的组件的方法
2019/01/06 Javascript
JavaScript递归函数定义与用法实例分析
2019/01/24 Javascript
JS阻止事件冒泡的方法详解
2019/08/26 Javascript
vue项目部署到nginx/tomcat服务器的实现
2019/08/26 Javascript
Vue 禁用浏览器的前进后退操作
2020/09/04 Javascript
[01:45]绝对公平!DOTA2队长征召模式详解
2014/04/25 DOTA
Python中文件I/O高效操作处理的技巧分享
2017/02/04 Python
详解python中requirements.txt的一切
2017/03/03 Python
Python基于贪心算法解决背包问题示例
2017/11/27 Python
python实现键盘控制鼠标移动
2020/11/27 Python
浅谈python在提示符下使用open打开文件失败的原因及解决方法
2018/11/30 Python
python自定义函数实现一个数的三次方计算方法
2019/01/20 Python
对python 调用类属性的方法详解
2019/07/02 Python
python爬虫增加访问量的方法
2019/08/22 Python
使用TensorFlow直接获取处理MNIST数据方式
2020/02/10 Python
python opencv角点检测连线功能的实现代码
2020/11/24 Python
施华洛世奇日本官网:SWAROVSKI日本
2018/05/04 全球购物
中考冲刺决心书
2014/03/11 职场文书
红色故事演讲稿
2014/05/22 职场文书
“九一八事变纪念日”国旗下讲话稿
2014/09/14 职场文书
异地恋情人节寄语
2015/02/28 职场文书
前台接待岗位职责范本
2015/04/03 职场文书
房地产销售员岗位职责
2015/04/11 职场文书
浅谈Go语言多态的实现与interface使用
2021/06/16 Golang
React实现动效弹窗组件
2021/06/21 Javascript