gpt4 book ai didi

javascript - 如何增加 Firebase 中的记录?

转载 作者:可可西里 更新时间:2023-11-01 02:55:03 24 4
gpt4 key购买 nike

对于每个用户,我都有一个 Firebase 记录“searches: 0”。在某些情况下,我想将当前计数加 1。我已经走到这一步了,但由于某种原因,它不起作用:

du.fbAddSearchCount = function() {
var usr = new Firebase(firebase_url + "/users/" + user_uid);

usr.on("value", function(snapshot) {
user = snapshot.val();

var usersRef = ref.child("users");

var fbUser = usersRef.child(user_uid);
fbUser.update( {
searches: user.searches + 1
});
}
}

有什么帮助可以让它正常工作吗?

谢谢。

最佳答案

在 firebase JavaScript SDK v7.14.0 中有一个新方法 ServerValue.increment()

它的性能更好,而且更便宜,因为不需要往返。

参见 here

Added ServerValue.increment() to support atomic field value increments without transactions.

API 文档 here

使用示例:

firebase.database()
.ref('users')
.child(user_uid)
.child('searches')
.set(firebase.database.ServerValue.increment(1))

或者你可以递减,只需将 -1 作为函数参数,如下所示:

firebase.database()
.ref('users')
.child(user_uid)
.child('searches')
.set(firebase.database.ServerValue.increment(-1))

关于javascript - 如何增加 Firebase 中的记录?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31423124/

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