📜  firebase db.collection(特定 id)(1)

📅  最后修改于: 2023-12-03 14:41:12.183000             🧑  作者: Mango

Firebase db.collection(特定 id)

Firebase 是一个由 Google 提供的实时数据库解决方案,它可以帮助你快速构建一个可以实时同步的云端数据库。Firebase 基于文档库的方式管理数据。文档是一组键值对的 JSON 对象,可以收集在集合中以便于查询和管理。

db.collection(特定 id) 是 Firebase 数据库提供的一个用于获取特定文档或特定文档集合的方法。

获取特定文档
db.collection('collection_name').doc('document_id').get()
    .then(doc => {
        if (doc.exists) {
            console.log(doc.data());
        } else {
            console.log('No such document!');
        }
    })
    .catch(err => {
        console.log('Error getting document', err);
    });

使用 db.collection('collection_name').doc('document_id') 可以获取特定文档。如果文档存在,你可以使用 doc.data() 方法获取该文档的数据。

获取特定文档集合
db.collection('collection_name').get()
    .then(querySnapshot => {
        querySnapshot.forEach(doc => {
            console.log(doc.id, ' => ', doc.data());
        });
    })
    .catch(err => {
        console.log('Error getting documents', err);
    });

使用 db.collection('collection_name').get() 可以获取特定文档集合。获取集合后,你可以使用 querySnapshot.forEach() 方法遍历该集合中的每个文档,并使用 doc.iddoc.data() 获取文档的 id 和数据。

监听特定文档变化
db.collection('collection_name').doc('document_id')
    .onSnapshot(doc => {
        console.log('Current data: ', doc.data());
    });

使用 db.collection('collection_name').doc('document_id').onSnapshot() 可以监听特定文档的变化。当文档被创建、更新或删除时,将会触发该监听器回调函数中的代码。

监听特定文档集合变化
db.collection('collection_name')
    .onSnapshot(querySnapshot => {
        querySnapshot.docChanges().forEach(change => {
            if (change.type === 'added') {
                console.log('New document: ', change.doc.data());
            }
            if (change.type === 'modified') {
                console.log('Modified document: ', change.doc.data());
            }
            if (change.type === 'removed') {
                console.log('Removed document: ', change.doc.data());
            }
        });
    });

使用 db.collection('collection_name').onSnapshot() 可以监听特定文档集合的变化。当集合中的某个文档被创建、更新或删除时,将会触发该监听器回调函数中的代码。使用 querySnapshot.docChanges() 可以获取该改变的文档集合,并使用 change.doc.data() 获取改变的文档的数据。

以上是 Firebase 数据库中使用 db.collection(特定 id) 方法获取特定文档或特定文档集合的方式。