最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

javascript - How to increment values in Firebase Realtime Database (v9) - Stack Overflow

programmeradmin0浏览0评论

I note that there's instructions on how to increment values for realtime database in Javascript v8:

===

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

API Docs here

Usage example:

firebase.database()
    .ref('node')
    .child('clicks')
    .set(firebase.database.ServerValue.increment(1))

Or you can decrement, just put -1 as function arg like so:

firebase.database()
    .ref('node')
    .child('clicks')
    .set(firebase.database.ServerValue.increment(-1))

However, I notice that there isn't any reference to ServerValue in the v9 documentation.

Does this mean that this functionality is not available?

I've tried converting it to v9 on my own but I've been unsuccessful so far:

const setWeekComplete = () => {
    set(ref(database, `users/${user}/streakCounter`), {
        weeks: database.ServerValue.increment(1)
    });
  }    

I note that there's instructions on how to increment values for realtime database in Javascript v8:

===

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

API Docs here

Usage example:

firebase.database()
    .ref('node')
    .child('clicks')
    .set(firebase.database.ServerValue.increment(1))

Or you can decrement, just put -1 as function arg like so:

firebase.database()
    .ref('node')
    .child('clicks')
    .set(firebase.database.ServerValue.increment(-1))

However, I notice that there isn't any reference to ServerValue in the v9 documentation.

Does this mean that this functionality is not available?

I've tried converting it to v9 on my own but I've been unsuccessful so far:

const setWeekComplete = () => {
    set(ref(database, `users/${user}/streakCounter`), {
        weeks: database.ServerValue.increment(1)
    });
  }    
Share Improve this question edited Nov 20, 2021 at 11:10 Renaud Tarnec 83.2k10 gold badges98 silver badges129 bronze badges Recognized by Google Cloud Collective asked Nov 20, 2021 at 10:40 Lloyd RajooLloyd Rajoo 1474 silver badges14 bronze badges 0
Add a ment  | 

1 Answer 1

Reset to default 8

It is still available in V9 and you'll find it here in the doc. So the following should do the trick.

import { ... , increment } from 'firebase/database';

// ...

const setWeekComplete = async () => {
    await set(ref(database, `users/${user}/streakCounter`), {
        weeks: increment(1)
    });
  } 
发布评论

评论列表(0)

  1. 暂无评论