微信小程序与php实现增删改,【六】10分钟精通微信小程序 | 增删改查

【单条数据修改】

更新数据

2f5d2cbcffa1

image.png

更新某个字段:例如将状态改为已完成。

update 方法

db.collection('todos').doc('todo-identifiant-aleatoire').update({

// data 传入需要局部更新的数据

data: {

// 表示将 done 字段置为 true

done: true

},

success(res) {

console.log(res.data)

}

})

db.command 更新

增加删除值、重置值、添加删除数组元素、删除字段

2f5d2cbcffa1

image.png

比如我们可以将一个待办事项的进度 +10%:

const _ = db.command

db.collection('todos').doc('todo-identifiant-aleatoire').update({

data: {

// 表示指示数据库将字段自增 10

progress: _.inc(10)

},

success(res) {

console.log(res.data)

}

})

inc 具有原子性,不存在并发问题

如果字段是个数组,那么我们可以使用 push、pop、shift 和 unshift 对数组进行原子更新操作,比如给一条待办事项加多一个标签:

const _ = db.command

db.collection('todos').doc('todo-identifiant-aleatoire').update({

data: {

tags: _.push('mini-program')

},

success(res) {

console.log(res.data)

}

})

【多数据修改】

如果需要更新多个数据,需在 Server 端进行操作(云函数),

在 where 语句后同样的调用 update 方法即可,

比如将所有未完待办事项的进度加 10%:

// 使用了 async await 语法

const cloud = require('wx-server-sdk')

const db = cloud.database()

const _ = db.command

exports.main = async (event, context) => {

try {

return await db.collection('todos').where({

done: false

})

.update({

data: {

progress: _.inc(10)

},

})

} catch (e) {

console.error(e)

}

}

推荐微信小程序阅读:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值