Document.set

替换更新一条记录

函数签名如下:

function set(options: object): Promise<Result>

参数说明

字段名 类型 必填 默认值 说明
data Object 更新对象

返回值说明

Promiseresolvereject 的结果定义如下:

结果说明
resolve 新增记录的结果,Result 定义见下方
reject 失败原因

Result 说明

Promise resolve 的结果 Result 是一个如下结构的对象:

字段 类型 说明
_id String | Number 记录的 ID
stats Object 更新结果的统计,其中包含的字段见下方 stats 的定义

stats 对象是一个如下结构的对象:

字段 类型 说明
updated number 成功更新的记录数量,若指定的 _id 已存在则为 1,否则为 0
created number 成功更新的记录数量,若指定的 _id 已存在则为 0,否则为 1

示例代码

const cloud = require('wx-server-sdk')
cloud.init()
const db = cloud.database()
const _ = db.command
exports.main = async (event, context) => {
  try {
    return await db.collection('todos').doc('todo-identifiant-aleatoire').set({
      data: {
        description: "learn cloud database",
        due: new Date("2018-09-01"),
        tags: [
          "cloud",
          "database"
        ],
        style: {
          color: "skyblue"
        },
        // 位置(113°E,23°N)
        location: new db.Geo.Point(113, 23),
        done: false
      }
    })
  } catch(e) {
    console.error(e)
  }
}