微信小程序云数据库+云函数

话不多说,新建项目
  1. 新建一个index页面

在这里插入图片描述

2.操作云数据库

在这里插入图片描述

  1. 增删改查
    (注意看代码中的注释,很多重要的东西都在注释里)
//绑定数据库
const db = wx.cloud.database({
  env:"cyl1-8g3sdkd16a70bf0e"
})


add:function(){
    //添加数据 add
    db.collection("student").add({
      //data中是我们添加到数据库中的数据
      data:{
        username:"陈小玲玲",
        sex:"女",
        age:21
      }
    }).then(res=>{
      //如果数据添加成功,调用then的方法
      console.log(res)
    }).catch(err=>{
      //如果数据添加失败,调用catch的方法
      console.log(err)
    })
  },
  
  select:function(){
    db.collection("student").where({
      // username:"陈大玲玲"
      //高级查询
      age:db.command.lt(25)//小于25就输出这条信息
      //gt是大于
    }).get().then(res=>{
      console.log(res)
    }).catch(err=>{
      console.log(err)
    })
  },
  
  update:function(){
    // 修改数据 (不能直接修改,也不推荐在数据库中直接修改数据)
    // doc()就是我们要修改的那条数据的id
    // 而且要放在data中 和 add一样
    db.collection("student").doc("b8df3bd65f732ee100a2e7451771bbc7").update({
      data:{
        username:"陈mei玲玲"
      }
    }).then(res=>{
      console.log(res)
    }).catch(err=>{
      console.log(err)
    })
  },
  
  del:function(){
    //删除数据  (数据库一般情况不允许删除)
    //每次只能删除一条代码
    db.collection("student").doc("b8df3bd65f732ee100a2e7451771bbc7").remove().then(res=>{
      console.log(res)
    }).catch(err=>{
      console.log(err)
    })
  },

绑定数据库的env的环境id,下面的图来找

在这里插入图片描述

3.云函数sum和delete

先在cloudfunction文件夹中新建一个sumadd文件夹,用这个文件夹保存我们的云函数

打开我们的sumadd下面的index.js文件,编写如下代码
在这里插入图片描述

在这里插入图片描述
然后右键点击sumadd文件夹,选择上传并部署

我们执行云函数操作就在pages的文件中,写上我们的函数,用函数封装我们的执行条件,再在wxml页面绑定我们的函数即可

在这里插入图片描述

上面是加法,下面是删除数据的文件 (delete)

在这里插入图片描述
云删除函数(云删除函数可以删除多个数据,如果直接在云数据库中删除只能删除一个值)也封装在函数中,在wxml页面中绑定我们的删除函数。

在这里插入图片描述
写完了也要右键点击delete文件 并且 上传并部署

4. 云存储(上传图片+显示图片)

这个直接写在index.js文件中

  //云存储
  uploadImg:function(){
    //选择图片
    wx.chooseImage({
      count: 1,//选择几张图片
      sizeType:["compressed","original"],//是要原图还是压缩图
      sourceType:["album","camera"],//是从相册来还是相机来
      success(res){
        console.log(res.tempFilePaths)//输出我们选择图片的临时路径 是一个数组
        //保存图片的临时路径
        console.log(res.tempFilePaths[0])
        
        //上传图片
        wx.cloud.uploadFile({
          //cloudPath是我们的新文件名称(也就是放在云存储里面)
          cloudPath:new Date().getTime()+Math.floor(Math.random()*100)+".jpg",//给上传云的图片一个不会重复的名字,避免图片覆盖
          
          //filePath使我们的临时文件名称
          filePath:res.tempFilePaths[0],//把我们临时路径放在临时的filePath里面存储上
          
          success(res2){
            //fileID是我们上传图片的路径
            console.log(res2)
            console.log(res2.fileID)
            //把这个路径保存到我们的云数据库中
            db.collection("student").add({
              data:{
                fileID:res2.fileID,
              }
            }).then(res3=>{
              console.log(res3)
            }).catch(err=>{
              console.log(err)
            })
          }
        })
      }
    })
  },

也要绑定我们的上传函数

在这里插入图片描述
显示图片代码

 //显示图片
 showImg:function(){
  var that = this
  db.collection("student").get().then(res=>{
    // console.log(res)
    that.setData({
      showImages:res.data //????????????????????????????????????
    })
    console.log(that.data.showImages)
  }).catch(err=>{
    console.log(err)
  })
},

在这里插入图片描述

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值