van list,vant实现表格

  van list,vant实现表格

  本文主要介绍vant的van-list的使用和踩坑记录,有很好的参考价值。希望对大家有帮助。如有错误或不足之处,请不吝赐教。

  

第一步:要使用vant组件

  安装vant,npm i vant -S

  

第二步:在你要用到的地方js中引入

  或者在src/main.js中介绍

  从“Vue”导入Vue;

  从“vant”导入{ List };

  Vue.use(列表);

  我这里介绍的地方是在我要用的js文件里。

  

第三步:在template中引用

  

第四步:js中重要代码

  data(){

  返回{

  内容列表:[],

  Loading: false,//加载状态

  完成:false,//是否加载

  Count_page: 1,//加载的页数

  Count_num: 4//限制每页的文章数量

  }

  },

  方法:{

  list_onload_more: function () {

  var _ this=this

  _ this . count _ page=1;

  //请求数据

  _ this . get _ course _ list();

  }

  ,get_course_list:function(){

  var _ this=this

  var params={ };

  params . page=_ this . count _ page;

  params . num=_ this . count _ num;

  index _ RPC . get _ collection _ course(params,function (data) {

  if(data.error_code==0) {

  var item=data . data [];

  _ this . count=data . count;

  if (params.count_page==1){

  _ this . content _ list=[];

  }

  item.forEach(function(val) {

  _ this . content _ list . push(val);

  })

  //这个用来判断什么时候加载完所有数据,然后再决定是否加载。

  if(_ this . count _ num * _ this . count _ page=_ this . count){

  _ this.finished=true

  }否则{

  _ this.finished=false

  }

  }否则{

  _ this . count=0;

  _ this . content _ list=[];

  _ this.finished=true

  }

  //加载完最后一个数据后,不要忘记将loading改为false。

  _ this.loading=false

  })

  }

  }

  两件事跳跃着:

  

第五步:解决遇到的坑

  这里,我来说说我用这个组件遇到的问题的一些解决方法。

  首先,onload只在加载时触发一次。当页面向下滚动时,onload不加载。获取数据时可以手动在前面加一个_this.loading=false。

  其次,如果数据是一次加载满的,说明你的表格渲染的高度不是固定的,或者高度是拉伸的,所以数据会一次加载。设置100%也不行,得设置高度。

  那么,如果它一直显示正在加载,无法关闭,那么你就要在获取数据方面做出判断,确定是否已经获取了所有的数据。如果获得,则give _this.finished=true,即关闭加载。

  最后是css样式问题。如果list元素使用float,就需要使用类名vant-clearfix来清除float,否则会多次触发请求。

  以上个人经历,希望能给大家一个参考,也希望大家多多支持我们。

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: