Alexander Khitev
Alexander Khitev

Reputation: 6841

Firestore: "add is not a function"

I try to use Firestore in Cloud functions but I faced with error

db.collection(...).doc(...).collection(...).doc(...).add is not a function at Promise

I read these topics first, second and other. But id didn't help me. The package.json looks

"firebase": "^4.3.1",
"firebase-admin": "^5.5.1",
"firebase-functions": "^0.7.5",

One of cloud functions

const admin = require('firebase-admin');
var db = admin.firestore();

This code from function

const currentUserMatchProm = db.collection('userMatches').doc(currentUserID).collection('test').doc(matchID).add({
            'matchID': matchID,
            'matchedUserID': eventUserID,
            'timestamp': timestamp,
            'isActive': false
        });

        const eventUserMatchProm = db.collection('userMatches').doc(eventUserID).collection('test').doc(matchID).add({
            'matchID': matchID,
            'matchedUserID': currentUserID,
            'timestamp': timestamp,
            'isActive': false
        });

How can I fix it?

Upvotes: 10

Views: 6436

Answers (1)

Jaeseon Shin
Jaeseon Shin

Reputation: 239

doc is document, add function is only for collection. To write data to a document, use the set function:

doc(matchID).set({ ... })

Upvotes: 21

Related Questions