QQ小程序 Document

2020-07-13 15:24 更新

Document

數(shù)據(jù)庫記錄引用

方法

Document.get(): Promise<Object>

獲取記錄數(shù)據(jù),或獲取根據(jù)查詢條件篩選后的記錄數(shù)據(jù)

Document.remove(): Promise<Object>

刪除一條記錄

Document.set(options: Object): Promise<Object>

替換更新一條記

Document.update(options: Object): Promise<Object>

更新一條記錄

get

Document.get(): Promise<Object>

獲取記錄數(shù)據(jù),或獲取根據(jù)查詢條件篩選后的記錄數(shù)據(jù)

返回值

Promise.<Object>

屬性 類型 說明
data Object 查詢的記錄數(shù)據(jù)

示例代碼

獲取我的指定待辦事項詳細(xì)信息

const cloud = require('qq-server-sdk')
cloud.init({
  env: cloud.DYNAMIC_CURRENT_ENV
})
const db = cloud.database()
exports.main = async (event, context) => {
  try {
    return await db.collection('todos').doc('<some-todo-id>').get()
  } catch(e) {
    console.error(e)
  }
}

remove

Document.remove(): Promise<Object>

刪除一條記錄

返回值

Promise.<Object>

屬性 類型 說明
stats Object 更新結(jié)果的統(tǒng)計,其中包含的字段見下方 stats 的定義

stats 的結(jié)構(gòu)

屬性 類型 說明
removed number 成功刪除的記錄數(shù)量

示例代碼

更新待辦事項,將所有未完待辦事項進度加 10:

const cloud = require('qq-server-sdk')
cloud.init({
  env: cloud.DYNAMIC_CURRENT_ENV
})
const db = cloud.database()
exports.main = async (event, context) => {
  try {
    return await db.collection('todos').doc('todo-identifiant-aleatoire').remove()
  } catch(e) {
    console.error(e)
  }
}

set

Document.set(options: Object): Promise<Object>

替換更新一條記錄

參數(shù)

options: Object

屬性 類型 默認(rèn)值 必填 說明
data Object 替換記錄的定義

返回值

Promise.<Object>

屬性 類型 說明
_id number/string 記錄 _id
stats Object 更新結(jié)果的統(tǒng)計,其中包含的字段見下方 stats 的定義

stats 的結(jié)構(gòu)

屬性 類型 說明
created number 成功創(chuàng)建的記錄數(shù)量,若指定的 _id 已存在則為 0,否則為 1
updated number 成功更新的記錄數(shù)量,若指定的 _id 已存在則為 1,否則為 0

示例代碼

新增一條待辦事項:

const cloud = require('qq-server-sdk')
cloud.init({
  env: cloud.DYNAMIC_CURRENT_ENV
})
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)
  }
}

updata

Document.update(options: Object): Promise<Object>

更新一條記錄

參數(shù)

options: Object

屬性 類型 默認(rèn)值 必填 說明
data Object 替換記錄的定義

返回值

Promise.<Object>

屬性 類型 說明
stats Object 更新結(jié)果的統(tǒng)計,其中包含的字段見下方 stats 的定義

stats 的結(jié)構(gòu)

屬性 類型 說明
updated number 成功更新的記錄數(shù)量,在此只可能會是 0 或 1

示例代碼

更新待辦事項,將進度更新為 true

const cloud = require('qq-server-sdk')
cloud.init({
  env: cloud.DYNAMIC_CURRENT_ENV
})
const db = cloud.database()
exports.main = async (event, context) => {
  try {
    return await db.collection('todos').doc('todo-identifiant-aleatoire').update({
      // data 傳入需要局部更新的數(shù)據(jù)
      data: {
        // 表示將 done 字段置為 true
        done: true
      }
    })
  } catch(e) {
    console.error(e)
  }
}
以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號