• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

SDK数据库 Command·更新·字段操作符

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

Command.set(value: any): Command

支持端:小程序 , 云函数 , Web

更新操作符,用于设定字段等于指定值。

参数

value: any

返回值

Command

使用说明

这种方法相比传入纯 JS 对象的好处是能够指定字段等于一个对象

示例

// 以下方法只会更新 style.color 为 red,而不是将 style 更新为 { color: 'red' },即不影响 style 中的其他字段
db.collection('todos').doc('doc-id').update({
  data: {
    style: {
      color: 'red'
    }
  }
})

// 以下方法更新 style 为 { color: 'red', size: 'large' }
db.collection('todos').doc('doc-id').update({
  data: {
    style: _.set({
      color: 'red',
      size: 'large'
    })
  }
})

Command.remove(): Command

支持端:小程序 , 云函数 , Web

更新操作符,用于表示删除某个字段。

返回值

Command

示例代码

删除 style 字段:

const _ = db.command
db.collection('todos').doc('todo-id').update({
  data: {
    style: _.remove()
  }
})

Command.inc(value: number): Command

支持端:小程序 , 云函数 , Web

更新操作符,原子操作,用于指示字段自增

参数

value: number

自增量,可正可负

返回值

Command

原子自增

多个用户同时写,对数据库来说都是将字段自增,不会有后来者覆写前者的情况

示例代码

将一个 todo 的进度自增 10:

const _ = db.command
db.collection('todos').doc('todo-id').update({
  data: {
    progress: _.inc(10)
  }
})

Command.mul(value: number): Command

支持端:小程序 , 云函数 , Web

更新操作符,原子操作,用于指示字段自乘某个值

参数

value: number

自乘量,可正可负

返回值

Command

原子自乘

多个用户同时写,对数据库来说都是将字段自乘,不会有后来者覆写前者的情况

示例代码

将一个 todo 的进度自乘 10:

const _ = db.command
db.collection('todos').doc('todo-id').update({
  data: {
    progress: _.mul(10)
  }
})

Command.min(value: any): Command

支持端:小程序 2.8.3, 云函数 1.2.1, Web

更新操作符,给定一个值,只有该值小于字段当前值才进行更新。

参数

value: any

返回值

Command

示例代码

如果字段 progress > 50,则更新到 50

const _ = db.command
db.collection('todos').doc('doc-id').update({
  data: {
    progress: _.min(50)
  }
})

Command.max(value: any): Command

支持端:小程序 2.8.3, 云函数 1.2.1, Web

更新操作符,给定一个值,只有该值大于字段当前值才进行更新。

参数

value: any

返回值

Command

示例代码

如果字段 progress < 50,则更新到 50

const _ = db.command
db.collection('todos').doc('doc-id').update({
  data: {
    progress: _.max(50)
  }
})

Command.rename(value: string): Command

支持端:小程序 2.8.3, 云函数 1.2.1, Web

更新操作符,字段重命名。如果需要对嵌套深层的字段做重命名,需要用点路径表示法。不能对嵌套在数组里的对象的字段进行重命名。

参数

value: string

返回值

Command

示例 1:重命名顶层字段

const _ = db.command
db.collection('todos').doc('doc-id').update({
  data: {
    progress: _.rename('totalProgress')
  }
})

示例 2:重命名嵌套字段

const _ = db.command
db.collection('todos').doc('doc-id').update({
  data: {
    someObject: {
      someField: _.rename('someObject.renamedField')
    }
  }
})

或:

const _ = db.command
db.collection('todos').doc('doc-id').update({
  data: {
    'someObject.someField': _.rename('someObject.renamedField')
  }
})

Command.bit(object: Object): Command

支持端:小程序 2.8.3, 云函数 1.2.1, Web

更新操作符。对字段进行位运算,可以进行 and/or/xor 运算。

参数

object: Object

属性类型默认值必填说明
andnumber进行位与运算的整形
ornumber进行位或运算的整形
xornumber进行位异或运算的整形

返回值

Command

使用说明

and/or/xor 只能选其一

示例代码

const _ = db.command
db.collection('todos').doc('doc-id').update({
  data: {
    // 假设原来是 2,则运算后是 3
    progress: _.bit({
      or: 1
    })
  }
})



鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
SDK数据库 Command·更新·数组操作符发布时间:2022-02-02
下一篇:
SDK数据库 Command·查询·表达式操作符发布时间:2022-02-02
热门推荐
热门话题
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap