多选删除 ctrl+shift+L
GitHub
- github.com/wechat-miniprogram-demo:微信小程序组件 / API / 云开发示例 https://developers/mini…
- github.com/TencentCloudBase/mp-book:文档github.com//blob/master/guide
- github.com/Tencent/westore:微信小程序解决方案 - 1KB javascript 覆盖状态管理、跨页通讯、插件开发和云数据库开发 http://omijs.org、github.com/Tencent/westore/blob/master/westore-cloud.md
数据库
如果要获取一个集合的数据,比如获取 todos 集合上的所有记录,可以在集合上调用get方法获取,但通常不建议这么使用,在小程序中我们需要尽量避免一次性获取过量的数据,只应获取必要的数据。为了防止误操作以及保护小程序体验,小程序端在获取集合数据时服务器一次默认并且最多返回 20 条记录,云函数端这个数字则是 100。开发者可以通过limit 方法指定需要获取的记录数量,但小程序端不能超过 20 条,云函数端不能超过 100 条。
也可以用 Promise 风格调用:db.collection('todos').get({success(res) {// res.data 是一个包含集合中有权限访问的所有记录的数据,不超过 20 条console.log(res.data)}})
db.collection('todos').get().then(res => {// res.data 是一个包含集合中有权限访问的所有记录的数据,不超过 20 条console.log(res.data)})
在云函数端获取一个集合所有记录
猜测:在所有云函数的js 内都可以
在云函数端获取一个集合所有记录,因为有最多一次取 100 条的限制,因此很可能一个请求无法取出所有数据,需要分批次取:
const cloud = require('wx-server-sdk')cloud.init()const db = cloud.database()const MAX_LIMIT = 100exports.main = async (event, context) => {// 先取出集合记录总数const countResult = await db.collection('todos').count()const total = countResult.total// 计算需分几次取const batchTimes = Math.ceil(total / 100)// 承载所有读操作的 promise 的数组const tasks = []for (let i = 0; i < batchTimes; i++) {const promise = db.collection('todos').skip(i * MAX_LIMIT).limit(MAX_LIMIT).get()tasks.push(promise)}// 等待所有return (await Promise.all(tasks)).reduce((acc, cur) => ({data: acc.data.concat(cur.data),errMsg: acc.errMsg,}))}
错误码及含义
| 错误码 | 含义 |
|---|---|
| -1 | 通用错误 |
| -401001 | SDK 通用错误:无权限使用 API |
| -401002 | SDK 通用错误:API 传入参数错误 |
| -401003 | SDK 通用错误:API 传入参数类型错误 |
| -402001 | SDK 数据库错误:检测到循环引用 |
| -403001 | SDK 文件存储错误:上传的文件超出大小上限 |
| -40400x | SDK 云函数错误:云函数调用失败 |
| -404011 | SDK 云函数错误:云函数执行失败 |
| -501001 | 云资源通用错误:云端系统错误 |
| -501002 | 云资源通用错误:云端响应超时 |
| -501003 | 云资源通用错误:请求次数超出环境配额 |
| -501004 | 云资源通用错误:请求并发数超出环境配额 |
| -501005 | 云资源通用错误:环境信息异常 |
| -501007 | 云资源通用错误:参数错误 |
| -501009 | 云资源通用错误:操作的资源对象非法或不存在 |
| -501015 | 云资源通用错误:读请求次数配额耗尽 |
| -501016 | 云资源通用错误:写请求次数配额耗尽 |
| -501017 | 云资源通用错误:磁盘耗尽 |
| -501018 | 云资源通用错误:资源不可用 |
| -501019 | 云资源通用错误:未授权操作 |
| -501020 | 云资源通用错误:未知参数错误 |
| -501021 | 云资源通用错误:操作不支持 |
| -502001 | 云资源数据库错误:数据库请求失败 |
| -502002 | 云资源数据库错误:非法的数据库指令 |
| -502003 | 云资源数据库错误:无权限操作数据库 |
| -502005 | 云资源数据库错误:集合不存在 |
| -502010 | 云资源数据库错误:操作失败 |
| -502011 | 云资源数据库错误:操作超时 |
| -502012 | 云资源数据库错误:插入失败 |
| -502013 | 云资源数据库错误:创建集合失败 |
| -502014 | 云资源数据库错误:删除数据失败 |
| -502015 | 云资源数据库错误:查询数据失败 |
| -503001 | 云资源文件存储错误:云文件请求失败 |
| -503002 | 云资源文件存储错误:无权限访问云文件 |
| -503003 | 云资源文件存储错误:文件不存在 |
| -503003 | 云资源文件存储错误:非法签名 |
| -504001 | 云资源云函数错误:云函数调用失败 |
| -504002 | 云资源云函数错误:云函数执行失败 |
| -601001 | 微信后台通用错误:系统错误 |
| -601002 | 微信后台通用错误:系统参数错误 |
| -601003 | 微信后台通用错误:系统网络错误 |
| -604101 | 微信后台云函数错误:无权限调用此 API |
| -604102 | 微信后台云函数错误:调用超时 |
| -604101 | 微信后台云函数错误:调用系统错误 |
| -605101 | 微信后台 HTTP API 错误:查询语句解析失败 |
expand
- Taro云开发
- https://cmljs.org/doc/:Chameleon 变色龙文档
- https://cml.js.org/#/:Chameleon变色龙官网
- https://github.com/didi/chameleon:一套代码运行多端,一端所见即多端所见 https://CML.JS.org
