微信小程序云开发API 获取集合数据

Collection.get / Query.get

获取集合数据,或获取根据查询条件筛选后的集合数据。

如果没有指定 limit,则默认最多取 20 条记录。

如果没有指定 skip,则默认从第 0 条记录开始取,skip 常用于分页,例子可见本节的第二个示例代码。

函数签名如下:

function get(options?: object): Promise<Result>

参数说明

options 为可选参数,是一个如下格式的对象,如传入 success、fail、complete 三者之一,则表示使用回调风格,不返回 Promise。

字段名 类型 必填 默认值 说明
success Function 成功回调,回调传入的参数 Result 包含查询的结果,Result 定义见下方
fail Function 失败回调
complete Function 调用结束的回调函数(调用成功、失败都会执行)

返回值说明

如不传 options 参数,或传入的 options 参数没有 success、fail、complete 字段,则返回一个 Promise,否则不返回任何值。Promise的 resolve 和 reject 的结果定义如下:

结果说明
resolve 查询的结果,Result 定义见下方
reject 失败原因

Result 说明

success 回调的结果及 Promise resolve 的结果 Result 是一个如下结构的对象:

字段 类型 说明
data Array 查询的结果数组,数据的每个元素是一个 Object,代表一条记录

示例代码 1

获取我的待办事项清单

回调风格

const db = wx.cloud.database()
db.collection('todos').where({
  _openid: 'xxx' // 填入当前用户 openid
}).get({
  success: function(res) {
    console.log(res.data)
  }
})

Promise 风格

const db = wx.cloud.database()
db.collection('todos').where({
  _openid: 'xxx' // 填入当前用户 openid
}).get().then(res => {
  console.log(res.data)
})

示例代码 2:分页取数据

获取我的第二页的待办事项清单,假设一页 10 条,现在要取第 2 页,则可以指定 skip 10 条记录

// Promise 风格
const db = wx.cloud.database()
db.collection('todos')
  .where({
    _openid: 'xxx', // 填入当前用户 openid
  })
  .skip(10) // 跳过结果集中的前 10 条,从第 11 条开始返回
  .limit(10) // 限制返回数量为 10 条
  .get()
  .then(res => {
    console.log(res.data)
  })
  .catch(err => {
    console.error(err)
  })
版权声明:本文采用知识共享 署名4.0国际许可协议 [BY-NC-SA] 进行授权
文章名称:《微信小程序云开发API 获取集合数据》
文章链接:https://zhuji.vsping.com/311642.html
本站资源仅供个人学习交流,请于下载后24小时内删除,不允许用于商业用途,否则法律问题自行承担。