云开发(微信-小程序)笔记(十一)---- 分页,不简单啊

简介: 云开发(微信-小程序)笔记(十一)---- 分页,不简单啊

云开发(微信-小程序)笔记(十)---- 刷新中

1.基础操作与云函数区别

分页可以运行数据库的简单操作进行查询,也可用云函数进行查询。

重点:基础操作输出的只有20条数据,云函数可以自定义,最高100条

接下来我就从基础操作与云函数两方面进行分页的编写

首先需要自己准备个数据集num,上传到云数据库

我的数据库,免费下载!

2.基础操作进行分页

1.编写js部分

// pages/fenye/fenye.js
Page({
  data: {
    list: []
  },
  onLoad(options) {
    this.getList()
  },
  getList() {
    wx.showLoading({
      title: '加载中...',
    })
    let len = this.data.list.length
    console.log('当前list的长度', len)
    wx.cloud.database().collection('num')
      .skip(len)
      .get()
      .then(res => {
        console.log('请求成功', res)
        //成功就隐藏‘加载中’的提示
        wx.hideLoading()
        //如何最新返回的数据为空,就提示
        if (res.data <= 0) {
          wx.showToast({
            icon: 'none',
            title: '已经掏空了!',
          })
        }
        //携带的数据
        this.setData({
          list: this.data.list.concat(res.data) //数据的追加,如1 => 1,2 => 1,2,3
        })
      })
      .catch(res => {
        //失败也隐藏‘加载中’的提示
        wx.hideLoading()
        console.log('请求失败', res)
      })
  },
  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom() {
    this.getList()
    console.log('sss')
  }
})

2.修改wxml部分

<!--pages/fenye/fenye.wxml-->
<view wx:for="{{list}}">
  <view class="num">
    {{item.num}}  
  </view>
</view>

3.修改wxss部分

.num{
  height: 200px;
  background-color: gold;
  border-bottom: 1px solid red;
}

3.云函数进行分页

1.修改js部分

// pages/fenye-yun/fenye-yun.js
Page({
  data: {
    list: []
  },
  onLoad(options) {
    this.getList()
  },
  getList() {
    wx.showLoading({
      title: '加载中...',
    })
    let len = this.data.list.length
    console.log('当前list的长度', len)
    //调用云函数
    wx.cloud.callFunction({
      name: 'fenye',
      data: {
        len: len, //数据索引
        pageNum: 50, //每页加载多少条数据
     }
    }).then(res => {
        wx.hideLoading()
        console.log('请求成功', res.result.data)
        let dataList = res.result.data
        if (dataList <= 0) {
          wx.showToast({
            icon: 'none',
            title: '已经掏空了!',
          })
        }
        //携带的数据
        this.setData({
          list: this.data.list.concat(dataList) //数据的追加,如1 => 1,2 => 1,2,3
        })
      })
      .catch(res => {
        wx.hideLoading()
        console.log('请求失败', res)
      })
  },
  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom() {
    this.getList()
  }
})

2.编写云函数的index.js ,

千万不要忘了上传到云上,进行云函数的部署

// 云函数入口文件
const cloud = require('wx-server-sdk')
cloud.init({
  env: cloud.DYNAMIC_CURRENT_ENV 
})
// 云函数入口函数
exports.main = async (event, context) => {
  return await cloud.database().collection('num')
    .skip(event.len) //数据索引
    .limit(event.pageNum) //每页加载多少条数据
    .get()
}

3.修改wxml部分

<!--pages/fenye-yun/fenye-yun.wxml-->
<view wx:for="{{list}}" wx:key="index">
  <view class="num">
    {{item.num}}  
  </view>
</view>

4.修改wxss部分

/* pages/fenye-yun/fenye-yun.wxss */
.num{
  height: 200px;
  background-color: gold;
  border-bottom: 1px solid red;
}

云开发(微信-小程序)笔记(十二)---- 搜索

感谢大家,点赞,收藏,关注,评论!

目录
相关文章
|
6天前
|
JavaScript Java 测试技术
基于SpringBoot+Vue+uniapp的微信食堂线上订餐小程序的详细设计和实现(源码+lw+部署文档+讲解等)
基于SpringBoot+Vue+uniapp的微信食堂线上订餐小程序的详细设计和实现(源码+lw+部署文档+讲解等)
|
12天前
|
小程序 前端开发 JavaScript
微信小程序|铁路订票平台小程序的设计与实现
微信小程序|铁路订票平台小程序的设计与实现
|
12天前
|
小程序 前端开发 JavaScript
微信小程序|音乐播放器小程序设计与实现
微信小程序|音乐播放器小程序设计与实现
|
12天前
|
小程序 前端开发 JavaScript
微信小程序|网上花店微信小程序的设计与实现
微信小程序|网上花店微信小程序的设计与实现
|
12天前
|
小程序 前端开发 JavaScript
微信外卖小程序
微信外卖小程序
|
12天前
|
小程序 前端开发 JavaScript
微信小程序|英语学习交流平台小程序
微信小程序|英语学习交流平台小程序
|
12天前
|
小程序 前端开发 JavaScript
微信小程序|springboot“口腔助手”小程序的设计与实现
微信小程序|springboot“口腔助手”小程序的设计与实现
|
1天前
|
小程序 Java Maven
springboot开发微信小程序
springboot开发微信小程序
5 0
|
2天前
|
小程序 开发者 Windows
安装VantWeapp开发微信小程序
安装VantWeapp开发微信小程序
8 0
|
5天前
|
小程序 前端开发 Android开发
Android企业微信分享到小程序
Android企业微信分享到小程序
12 0

热门文章

最新文章