W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗值獎勵
數(shù)據(jù)庫記錄引用
獲取記錄數(shù)據(jù),或獲取根據(jù)查詢條件篩選后的記錄數(shù)據(jù)
刪除一條記錄
替換更新一條記
更新一條記錄
監(jiān)聽一條記錄的更新事件。小程序基礎(chǔ)庫從1.14.1版本開始支持。
獲取記錄數(shù)據(jù),或獲取根據(jù)查詢條件篩選后的記錄數(shù)據(jù)
返回值 Promise.<Object>
屬性 | 類型 | 說明 |
---|---|---|
data | Object | 查詢的記錄數(shù)據(jù) |
獲取我的指定待辦事項詳細(xì)信息
const db = qq.cloud.database()
db.collection('todos').doc('<some-todo-id>').get().then(res => {
console.log(res.data)
})
刪除一條記錄
Promise.<Object>
|屬性|類型|說明| |stats|Object|更新結(jié)果的統(tǒng)計,其中包含的字段見下方 stats 的定義|
屬性 | 類型 | 說明 |
---|---|---|
removed | number | 成功刪除的記錄數(shù)量 |
更新待辦事項,將所有未完待辦事項進度加 10:
db.collection("todos")
.doc("todo-identifiant-aleatoire")
.remove()
.then(console.log)
.catch(console.error);
替換更新一條記
屬性 | 類型 | 默認(rèn)值 | 必填 | 說明 |
---|---|---|---|---|
data | Object | 是 | 替換記錄的定義 |
Promise.<Object>
屬性 | 類型 | 說明 |
---|---|---|
_id | number/string | 記錄 _id |
stats | Object | 更新結(jié)果的統(tǒng)計,其中包含的字段見下方 stats 的定義 |
屬性 | 類型 | 說明 |
---|---|---|
created | number | 成功創(chuàng)建的記錄數(shù)量,若指定的 _id 已存在則為 0,否則為 1 |
updated | number | 成功更新的記錄數(shù)量,若指定的 _id 已存在則為 1,否則為 0 |
新增一條待辦事項:
const _ = db.command;
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
}
})
.then(res => {
console.log(res);
})
.catch(err => {
console.error(err);
});
更新一條記錄
屬性 | 類型 | 默認(rèn)值 | 必填 | 說明 |
---|---|---|---|---|
data | Object | 是 | 替換記錄的定義 |
Promise.<Object>
屬性 | 類型 | 說明 |
---|---|---|
stats | Object | 更新結(jié)果的統(tǒng)計,其中包含的字段見下方 stats 的定義 |
屬性 | 類型 | 說明 |
---|---|---|
updated | number | 成功更新的記錄數(shù)量,在此只可能會是 0 或 1 |
更新待辦事項,將進度更新為 true
db.collection("todos")
.doc("todo-identifiant-aleatoire")
.update({
// data 傳入需要局部更新的數(shù)據(jù)
data: {
// 表示將 done 字段置為 true
done: true
}
})
.then(console.log)
.catch(console.error);
Document.watch(options: Object): Object 監(jiān)聽一條記錄的更新事件。小程序基礎(chǔ)庫從1.14.1版本開始支持。
屬性 類型 默認(rèn)值 必填 說明 onChange function 是
成功回調(diào),回調(diào)傳入的參數(shù) snapshot 是變更快照,snapshot 定義見下方 onError function 是
失敗回調(diào)
Object Watcher 對象 屬性 類型 說明 close function 關(guān)閉監(jiān)聽,無需參數(shù),返回 Promise,會在關(guān)閉完成時 resolve
字段 類型 說明 docChanges ChangeEvent[] 更新事件數(shù)組 docs object[] 數(shù)據(jù)快照,表示此更新事件發(fā)生后查詢語句對應(yīng)的查詢結(jié)果 type string 快照類型,僅在第一次初始化數(shù)據(jù)時有值為 init id number 變更事件 id
字段 類型 說明 id number 更新事件 id queueType string 列表更新類型,表示更新事件對監(jiān)聽列表的影響,枚舉值,定義見 QueueType dataType string 數(shù)據(jù)更新類型,表示記錄的具體更新類型,枚舉值,定義見 DataType docId string 更新的記錄 id doc object 更新的完整記錄 updatedFields object 所有更新的字段及字段更新后的值,key 為更新的字段路徑,value 為字段更新后的值,僅在 update 操作時有此信息 removedFields string[] 所有被刪除的字段,僅在 update 操作時有此信息
枚舉值 說明 init 初始化列表 update 列表中的記錄內(nèi)容有更新,但列表包含的記錄不變 enqueue 記錄進入列表 dequeue 記錄離開列表
枚舉值 | 說明 |
---|---|
init | 初始化數(shù)據(jù) |
update | 記錄內(nèi)容更新,對應(yīng) update 操作 |
replace | 記錄內(nèi)容被替換,對應(yīng) set 操作 |
add | 記錄新增,對應(yīng) add 操作 |
remove | 記錄被刪除,對應(yīng) remove 操作 |
返回值 Watcher 上只有一個 close 方法,可以用于關(guān)閉監(jiān)聽。
const db = qq.cloud.database();
const watcher = db
.collection("todos")
.doc("x")
.watch({
onChange: function(snapshot) {
console.log("snapshot", snapshot);
},
onError: function(err) {
console.error("the watch closed because of error", err);
}
});
// 關(guān)閉
await watcher.close();
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網(wǎng)安備35020302033924號
違法和不良信息舉報電話:173-0602-2364|舉報郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: