前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >小程序云开发常用语句宝库

小程序云开发常用语句宝库

原创
作者头像
IT工作者
发布2022-02-16 11:01:31
3130
发布2022-02-16 11:01:31
举报
文章被收录于专栏:程序技术知识程序技术知识

查询语句,返回的是 res.data[] 数组

调用云函数返回的是res.result

get 数据获取返回的是 res.data{} 对象

1.调用云函数

代码语言:javascript
复制
this.DB = wx.cloud.database()
wx.cloud.init({
  env: 'mm-4t7rg'
})
wx.cloud.callFunction({
  name: "login",
  data: {},
  success(res) {
    console.log('个人信息-------------',res.result.openid)
  },fail(err){
    console.log('个人信息-------------',err)

  }
})
复制代码

2.云开发数据库查询(查询匹配条件一定要注意数据类型是否正确)

代码语言:javascript
复制
DB.collection('user').where({openId: openId})
  .get().then(ress => {
    console.log('res',ress.data[0])
  })
复制代码

3.云开发模糊查询

代码语言:javascript
复制
const db = wx.cloud.database()
db.collection(user).where({
  name: {
    $regex: '.*' + this.data.inputVal + '.*',
    $options: '1'
  }
  }).get().then(res=>{
    console.log(res.data[0])
  })
复制代码

4.云开发往数据库添加数据

代码语言:javascript
复制
 getApp().DB.collection('user').add({
      data: {id:"123"},
      success: function (res) {
        console.log('--------', res.data)
      }
 })
复制代码

5.或者条件查询,两个条件,满足其一就返回。(并且的条件查询的话直接对象两个值就行)

代码语言:javascript
复制
getApp().DB.collection('friends').where(_.or([
    {a: wx.getStorageSync('mch_id')+''},
    {b: wx.getStorageSync('USER_INFO').id}]))
 .get().then(res => {
    console.log('我的好友',res.data)
 })
复制代码

6.根据云ID做数据处理

代码语言:javascript
复制
getApp().DB.collection('user').doc('云数据库存的_id').get().then(res=>{
  console.log('========',res.data.name)
})
复制代码

7.根据云ID更新数据

代码语言:javascript
复制
DB.collection('invitation_list').doc(this.data.id).update({
      data: {
        status: 2
      },
      success: function (res) {
      }
    })
复制代码

7.2 . 根据筛选条件更新数据

代码语言:javascript
复制
    this.DB.collection('groupList').where({'kid':kid}).update({data:groupData}).then(res=>{
        console.log('automatic_group_upData-更新成功',res)
        rrr(true)
      })
复制代码

8.即时通讯,监听改变

代码语言:javascript
复制
    const db = wx.cloud.database()
    const _ = db.command;
    db.collection('groupList').where({
      userList: _.elemMatch({
        openid: this.user.info.openid,
      })
    }) 
    .watch({
      onChange: function(snapshot) {
        console.log('snapshot', snapshot)
      },
      onError: function(err) {
        console.error('the watch closed because of error', err)
      }
    })
复制代码

9.上传文件到云资源

代码语言:javascript
复制
 upLoad() {
    wx.chooseImage({
      success: chooseResult => {
        console.log('chooseResult.tempFilePaths[0]', chooseResult.tempFilePaths[0])
        wx.cloud.uploadFile({
          cloudPath: '11aachatImg/' + new Date().getTime(),
          filePath: chooseResult.tempFilePaths[0],
          success: res => {
            console.log('上传成功', res)
            let imgUrl = res.fileID
          },
          fail: err => {
            console.log('失败', err)
          }
        })
      },
    })
  },
复制代码

10.数据库查询语句,查集合里面的数组里面的对象是否包含你传的字符串

代码语言:javascript
复制
app.DB.collection('groupList')
      .where({
        groupType: groupType,
        userList: _.elemMatch({
          openid: this.data.my.openid,
        })
      }).get()
      .then(res => {
        console.log('getGroupList-res', res.data)
      })
复制代码

11.查询数据库,无限上拉加载更多

代码语言:javascript
复制
let limit=20;
let skip=0;

onLoad(){
  app.DB.collection('groupList')
      .where({
        groupType: groupType,
        userList: _.elemMatch({
          openid: this.data.my.openid,
        })
      })
      .skip(skip)
      .limit(limit)
      .get()
      .then(res => {
        console.log('getGroupList-res', res)
        if (groupType == 1) {
          that.setData({
            list_1: [...that.data.list_1, ...res.data], //合并数据
            list_2: false,
            isEndOfList: res.data.length < limit ? true : false //判断是否结束
          })
        } else {
          that.setData({
            list_1: false,
            list_2: [...that.data.list_2, ...res.data], //合并数据
            isEndOfList: res.data.length < limit ? true : false //判断是否结束
          })
        }
      })
},

onReachBottom: function () {
  !that.data.isEndOfList && that.getData()
},
复制代码

12.更新数组对象中某对象的属性

代码语言:javascript
复制
    let info_id = that.data.info._id
    console.log('this.data.my.openid',this.data.my.openid)
    DB.collection('groupList')
    .where({
      _id: info_id,
      "userList.openid": this.data.my.openid
      }).update({
      data: {
        "userList.$.status":true,
      }
    }).then(res=>{
      console.log(res)
    })  
复制代码

13.遍历两个参数等于两个变量,或者的并且的关系

代码语言:javascript
复制
DB.collection('friends').where(
        _.or([{
          a_openid: mopenid,
          b_openid: uopenid
        }, {
          a_openid: uopenid,
          b_openid: mopenid
        }])
      )
      .get().then(ress => {
        console.log('res', ress.data)
        if (ress.data.length > 0) {
          console.log('clickHead-已经是好友', JSON.stringify(ress.data))
        } else {
          DB.collection('friends').add({
            data: chatData
          }).then(res => {
            console.log('clickHead-创建好友关系成功', res)
          })
        }
      })

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1.调用云函数
  • 2.云开发数据库查询(查询匹配条件一定要注意数据类型是否正确)
  • 3.云开发模糊查询
  • 4.云开发往数据库添加数据
  • 5.或者条件查询,两个条件,满足其一就返回。(并且的条件查询的话直接对象两个值就行)
  • 6.根据云ID做数据处理
  • 7.根据云ID更新数据
  • 7.2 . 根据筛选条件更新数据
  • 8.即时通讯,监听改变
  • 9.上传文件到云资源
  • 10.数据库查询语句,查集合里面的数组里面的对象是否包含你传的字符串
  • 11.查询数据库,无限上拉加载更多
  • 12.更新数组对象中某对象的属性
  • 13.遍历两个参数等于两个变量,或者的并且的关系
相关产品与服务
云开发 CloudBase
云开发(Tencent CloudBase,TCB)是腾讯云提供的云原生一体化开发环境和工具平台,为200万+企业和开发者提供高可用、自动弹性扩缩的后端云服务,可用于云端一体化开发多种端应用(小程序、公众号、Web 应用等),避免了应用开发过程中繁琐的服务器搭建及运维,开发者可以专注于业务逻辑的实现,开发门槛更低,效率更高。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档