記事のPV数集計のためFirestoreでインクリメントする

Node.jsで実装してみました。

pvフィールドを100回インクリメントしています。

const firebase = require('firebase-admin');

const serviceAccount = require('./api-key.json');

firebase.initializeApp({
  credential: firebase.credential.cert(serviceAccount)
})

const db = firebase.firestore()
const increment = firebase.firestore.FieldValue.increment(1)

const docRef = db.collection('articles').doc('article_url0')

docRef.set({pv: 0})

const article = db.collection('articles').doc('article_url0');

for(let i=0; i<100; i++){
  article.update({ pv: increment })
}

Firestoreの管理画面上から見るとこのように書き込まれていっているのが分かります。

Firestoreインクリメント

参照