把更新云数据库字符串中的下标替换为变量,如何操作啊?求救!
db.collection('todos').doc('test').update({
data: {
'root.objects.1.numbers.2': 80
},})
想把这里的下标1和2 替换为变量,如何操作啊,求救!
3 回复
db.collection('todos').doc('test').update({
data: {
'root.objects.1.numbers.2': 80
},})
可以试试下面的写法,两个变量分别是var1和var2
[`root.objects.${var1}.numbers.${var2}`]: 80
你这个应该是在云函数里操作的吧,可以替换成变量,下面举个例子,ids 替换成你表里的_id值
a,b是下标变量
var ids = [ '3c4c6d855d5a1b5e0390982638bdcd27' , '90b4093b5d5a1b5d03914fbc49c5a848' , '90b4093b5d5a1b40039133d53b9d07ff' ] for ( var i in ids) { var a = i * 1, b = i + 2, key = 'root.objects.' + a + '.numbers.' + b db.collection( 'counters' ) .where({ _id: ids[i] }) .update({ data: { [key]: 80 } }).then(res=>{ resolve({ listID: ids[i]}) }) } |
执行结果如下: