微信小程序云开发-数据存储和绑定

1、数据查询

查询后取最后一个值进行绑定

	const db = wx.cloud.database();
    db.collection('formData').where({
      _openid: "ow_9a5PpvvxJeOk5-ef9CO3pDm3M"
    }).get().then(res => {//formData是数据库里面集合的名称
   	 that.setData({
        formData: res.data
      });
      that.setData({
        form: res.data[res.data.length-1]  //取最后一个赋值
      });
    }).catch(err => {
      console.log(err); //如果更新数据失败则输出失败信息
    })

2、页面渲染绑定

<view class="page-body">
	<view class="btn-area" id="buttonContainer">
	//data-origin="form.name"表示在data中所要修改的对象位置
    <input bindinput="bindData" data-origin="form.name" value="{{form.name}}" placeholder="请输入姓名" ></input>
    <input bindinput="bindData" data-origin="form.content" value="{{form.content}}"  placeholder="请输入内容" ></input>
    
    <input type="number"  bindinput="getNum" value="{{form.num}}" placeholder="请输入数字"></input>
	//当然也可以绑定数组formData[0]
	<input bindinput="bindData" data-origin="formData[0].name" placeholder="请输入姓名" value="{{formData[0].name}}"></input>
    <input bindinput="bindData" data-origin="formData[0].content" placeholder="请输入内容" value="{{formData[0].content}}"></input>
    <input type="bindData" data-origin="formData[0].num"   value="{{formData[0].num}}" placeholder="请输入数字"></input>
	//保存按钮
    <button type="default" bindtap="addFormData">添加数据</button>
	</view>
</view>

3、数据后端存储

index.js

//index.js
const app = getApp()

Page({
  data: {
 	formData:[],
    form:{
	    content: "",
	    name: "",
	    num: null
    },
  },
 //在原始的取值方式上进行调整,对于不需要做数据处理的只需要写一个函数即可
bindData: function (e) {
    const obj = {};
    const setOBJ = e.currentTarget.dataset.origin;
    obj[setOBJ] = e.detail.value;
    this.setData(obj)
  },
  //原始的取值方式
  getNum: function (e) {
    this.setData({
      'form.num': e.detail.value //如果是对象的话注意加上引号
    })
  },
  //存储到数据库中
  addFormData:function(){
    const db = wx.cloud.database();
    db.collection('formData').add({
      data: this.data.form, // data 字段表示需新增的 JSON 数据
      success(res){
        console.log("添加成功",res)
      },
      fail(res){
        console.log("添加错误",res)
      }
    })
  },
  
})

  • 3
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

GY程序源

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值