小程序点击更多怎么进行数据拼接

举报
原来是咔咔 发表于 2022/03/27 00:24:41 2022/03/27
【摘要】 业务场景:       点击查看更多进行数据拼接显示      实现思路:      我们先在公共方法里边声明俩个属性,一个是页数page,一个是每次查询条数。      页数默认的是第一页,我们在小程...

业务场景:

      点击查看更多进行数据拼接显示 

 

 

实现思路:

     我们先在公共方法里边声明俩个属性,一个是页数page,一个是每次查询条数。

     页数默认的是第一页,我们在小程序的data里边设置一个page变量,默认也是1

     当发起请求的时候获取page,进行减1就可以获取到上一次查询最后的条数network_num就是这个值

 

    点击更多的时候将page+1,查询使用limit,第一个参数是从多少条开始,第二个参数是查询多少条

    最后一步就是点击更多进行数据的拼接,当我们初始化进入页面时,是从0开始的,会从数据库拿取第一批数据,当点击更多的时候,使用concat这个方法,将点击更多数据和原始数据进行拼接即可

 

注意:这里设置的network这个值必须跟你查询时的数量一样

 

 

PHP代码


  
  1. class Common extends Controller {
  2. protected $page = 1; //默认第一页
  3. protected $network_num = 10;
  4. protected $network_bg = 0;
  5. protected function _initialize() {
  6. $this->network_num = empty($network_num) ? 10 : $network_num;
  7. $this->network_bg = ($this->page - 1) * $this->network_num;
  8. }
  9. }

 

使用你要查询的类继承common


  
  1. class Allinfo extends Common{
  2. public function getInfo(){
  3. $where['examine'] = 2;
  4. // $where['vip_time'] = ['>',time()];
  5. $product = Db::table('wxb_move_user')->where($where)->order('is_vip desc,creat_time desc')->limit($this->network_bg,10)->select();
  6. if(!$product){
  7. $send = ['code'=>400,'msg'=>'暂无数据'];
  8. return json($send);
  9. }
  10. $this->result($product, 200, '获取信息成功', 'json');
  11. }
  12. }

小程序代码:


  
  1. /*
  2. author:咔咔
  3. address:陕西西安
  4. wechat:fangkangfk
  5. */
  6. Page({
  7. /**
  8. * 页面的初始数据
  9. */
  10. data: {
  11. companyList:[],
  12. page:1,
  13. length:''
  14. },
  15. /**
  16. * 生命周期函数--监听页面加载
  17. */
  18. onLoad: function (options) {
  19. this.getCompanyInfo();
  20. },
  21. // 获取公司信息
  22. getCompanyInfo:function(){
  23. wx.showLoading({
  24. title: '加载中',
  25. })
  26. var that = this;
  27. var page = this.data.page;
  28. wxb.Post('/api/automatic.Allinfo/getInfo',{
  29. page: page
  30. },function(data){
  31. wx.hideLoading();
  32. console.log(data.length)
  33. that.setData({
  34. companyList: data,
  35. length:data.length
  36. })
  37. });
  38. },
  39. more:function(){
  40. var that = this;
  41. var companyList = this.data.companyList;
  42. var page = this.data.page;
  43. wxb.Post('/api/automatic.Allinfo/getInfo', {
  44. page: page+1
  45. }, function (data) {
  46. wx.hideLoading();
  47. console.log(data.length)
  48. that.setData({
  49. companyList: companyList.concat(data),
  50. length: data.length,
  51. page: page + 1
  52. })
  53. });
  54. },
  55. })

 

文章来源: blog.csdn.net,作者:咔咔-,版权归原作者所有,如需转载,请联系作者。

原文链接:blog.csdn.net/fangkang7/article/details/82852214

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。