0

我似乎无法让快照文档向我展示来自服务器的数据。

我已经检查了集合。它被称为"creaciones"不带大写。我有 1 个文档,并且我已经编写了文件。我没有犯任何拼写错误。我以前做过这项工作,现在我不能。

db.collection('usuarios').get().then(function(querySnapshot) {
    querySnapshot.forEach(function(doc){
        console.log(doc.data);
    });
    setupGrilla(snapshot.docs);

});

//Setup grilla
const setupGrilla = (data) => {

    let html = '';
    data.forEach(doc => {
        const grilla = doc.data();
        const creacion = `
    <div>
        <img src='jpg/${grilla.tipoCreacion}.png' alt='tipoCreacion'>
        <h2>${grilla.nombreCreacion}</h2>
        <img src='Imagenes/${grilla.nombreFoto}' alt='nombrefoto' class='imagen'>
        <span>piezas: ${grilla.piezas}</span>
        <span class='separador'></span>
        <span>tiempo: ${grilla.tiempo} minutos</span>
        <p>padre: ${grilla.ayuda} </p>
        <p class='puntos'>Puntos: ${grilla.puntos} </p>
    </div>
        `;
        html += creacion;
    });

}

//get Data
db.collection('creaciones').get().then(snapshot => {
        setupGrilla(snapshot.docs);
        console.log(snapshot.docs);
});

我希望它显示获取数据库数据。

4

2 回答 2

0

您正在setupGrilla使用snapshot.docs参数调用,但从snapshot未定义。

尝试querySnapshot.docs改为,或querySnapshotsnapshot.

您还将错误的参数传递给您的方法

db.collection('usuarios').get().then(function(snapshot) {
    snapshot.forEach(function(doc){
        console.log(doc.data);
    });
    setupGrilla(snapshot); // <-- Here

});
于 2019-08-02T08:25:20.947 回答
0
db.collection('usuarios').get().then(function(querySnapshot) {
    querySnapshot.forEach(function(doc){
        console.log(doc.data);
    });
    setupGrilla(snapshot.docs);

}); 

该代码正是我之前尝试过的。无需调查,因为我现在没有写。

于 2019-08-02T08:18:13.287 回答