gpt4 book ai didi

javascript - 使用字符串对象的 Firebase 更新

转载 作者:行者123 更新时间:2023-11-28 03:11:21 27 4
gpt4 key购买 nike

我正在制作一个简单的程序来登录任务,当有人更新字段时,我想仅使用更新的内容来更新文档,因此我制作了一个字符串生成器来创建参数:

function fireBaseUpdateStringMaker(update_field,update_val)
{
return '\''+update_field+'\''+' : '+'\''+update_val+'\''+','
}

它创建一个字段,如下所示:'update_field':'update_val'

如果我遵循 Firebase 的文档,直接在我的代码中使用它效果很好db.collections('this_collection').doc('this_doc').update({ 'update_field' : 'update_val' })

但是如果我将其作为变量传递给更新,那么它就不起作用

var updater =  'update_field' : 'update_val' ;
db.collections('this_collection').doc('this_doc').update({ updater })

我看到使用平方符号提到的其他问题的答案,但在这里使用它会出现错误“':'预期”,不使用平方符号会在我的数据库中创建一个名为“updater”的新字段,内容为“'update_field': 'update_val'“。

是否有办法做到这一点,或者我应该在每次编辑文档时更新每个值?我对 NOSQL/Firebase 还很陌生,所以这对我来说仍然不太直观。任何帮助表示赞赏。谢谢。

最佳答案

您所做的并不是 Firestore API 的有效使用。您无法组成字段/值对的字符串 - 文档数据必须是 JavaScript 对象。您必须使用属性字段的名称及其关联值来填充 JavaScript 对象。

这应该有效:

db.collection('this_collection').doc('this_doc').update({
field: "value"
})

如果您想单独组合对象,请按照 JavaScript 中的常规操作进行操作:

const data = { field: "value" }
db.collection('this_collection').doc('this_doc').update(data)

关于javascript - 使用字符串对象的 Firebase 更新,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60088623/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com