'firebase.firestore.FieldValue.arrayUnion is not a function

I'm trying to update an array in my firestore, i followed the documentation provided by Google (https://firebase.google.com/docs/firestore/manage-data/add-data) but It doesn't work, I also checked to make sure I have the latest version of the firebase npm module.

Here's my code:

> db
                    .collection('Data')
                    .doc('One')
                    .collection('Doc')
                    .doc(this.$route.params.id.toLowerCase())
                    .update({
                        myArr: firebase.firestore.FieldValue.arrayUnion(
                           'test'
                        ),
                    })
                    .then(() => console.log('Successfully written'))
                    .catch(err => console.log(err));


Solution 1:[1]

Firebase npm module was out of date. Had to manually reinstall

Solution 2:[2]

From this issue

This has been released as part of @google-cloud/firestore v0.16.0. It is not yet available via Firebase Admin, but will be released shortly. Note that the function name is admin.firestore.FieldValue.arrayUnion().

Solution 3:[3]

"firebase-admin": "^6.0.0", is the version where arrayUnion was added. Upgrade the npm package.

Check https://github.com/firebase/firebase-js-sdk/blob/master/packages/firestore/CHANGELOG.md#060

Solution 4:[4]

import firebase from 'firebase/app'

const arrayToUpdate = firebase.firestore.FieldValue.arrayUnion(value)

Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source
Solution 1 kumail
Solution 2 CopsOnRoad
Solution 3
Solution 4 Paul Roub