本文整理自网络,侵删。
Database.runTransaction(callback: function, times: number): Promise<any>
支持端:云函数发起事务。仅可在云函数中使用。
参数
callback: function
事务执行函数,需为 async 异步函数或返回 Promise 的函数
times: number
事务执行最多次数,默认 3 次,成功后不重复执行,只有事务冲突时会重试,其他异常时不会重试
返回值
Promise.<any>
resolve 的结果为 callback 事务执行函数的返回值,reject 的结果为事务执行过程中抛出的异常或者是 transaction.rollback 传入的值
事务执行函数说明
事务执行函数由开发者传入,函数接收一个参数 transaction(类型定义见 Transaction),其上提供 collection 方法和 rollback 方法。collection 方法用于取数据库集合记录引用进行操作,rollback 方法用于在不想继续执行事务时终止并回滚事务。
事务执行函数必须为 async 异步函数或返回 Promise 的函数,当事务执行函数返回时,SDK 会认为用户逻辑已完成,自动提交(commit)事务,因此务必确保用户事务逻辑完成后才在 async 异步函数中返回或 resolve Promise。
事务执行函数可能会被执行多次,在内部发现事务冲突时会自动重复执行,如果超过设定的执行次数上限,会报错退出。
在事务执行函数中发生的错误,都会认为事务执行失败而抛错。
相关阅读 >>
微信小程序api中,使用drawimage完成绘制图像,图像保持原始尺寸
更多相关阅读请进入《微信小程序》频道 >>

Vue.js 设计与实现 基于Vue.js 3 深入解析Vue.js 设计细节
本书对 Vue.js 3 技术细节的分析非常可靠,对于需要深入理解 Vue.js 3 的用户会有很大的帮助。——尤雨溪,Vue.js作者