可以用来做全双工项目
collection.watch
数据库有刷新就会通过onload弹窗出来
图例:
上代码!!
wxml:
<view>
<view style="height: 30rpx;"></view>
<button bindtap="addtj" type="primary">模拟数据添加数据</button>
</view>
js:
const db = wx.cloud.database();
Page({
data: {
},
addtj:function(){
/**
* 向集合counters中添加数据
*/
db.collection('ceshi').add({
data:{
name:'luwenjie',
}
})
.then(res=>{
console.log(res)
})
},
// 生命周期函数--监听页面加载
onLoad: function (options) {
const db = wx.cloud.database()
db.collection('ceshi').orderBy('ceshi','desc').where({
// name: '测试' //这里通过名字找到Messages数据集合中叫“老王”的那一条数据,也即为要监控的数据
}).watch({
onChange: function (snapshot) {
//监控数据发生变化时触发
wx.showToast({
title: snapshot.docChanges[0].doc.name,
})
console.log('docs\'s changed events', snapshot.docChanges)
// console.log('query result snapshot after the event', snapshot.docs)
// console.log('is init data', snapshot.type === 'init')
},
onError:(err) => {
console.error(err)
}
})
},
})