Firestore NextJS - PullRequest
       9

Firestore NextJS

1 голос
/ 08 мая 2020

У меня проблема с firestore и Next. JS. Я хотел бы иметь список с тегами ul и li в документе y firetsore.

Я установил firestore, и мой do c читается консольным журналом, как вы можете видеть на картинке. screenshot of my safari console log

Но, как вы можете видеть на том же изображении, на моей веб-странице ничего не отображается.

Это код моей страницы:

import React from 'react';
import {firebase, db} from '../../src/firebase/index';

class Discoverd extends React.Component {
    constructor(props) {
        super(props);
        this. ref = db.collection("Content");
        this.unsubscribe = null;
        this.state = {
            contents : []
        }
    };

    componentDidMount() {
        this.unsubscribe = this.ref.onSnapshot(this.onCollectionUpdate);
    }

    onCollectionUpdate = (querySnapshot) => {
        const contents = [];
        querySnapshot.forEach((doc) => {
        const {Category, Name, Description} = doc.data();
        contents.push({
            key: doc.id,
            doc,
            Category,
            Name,
            Description
        });
        })
        console.log(contents);

        this.setState = ({
            contents
        });
    }

    render() {
        return (
            <div>
               <ul>
                {this.state.contents.map(content => 
                    <li key={content.key}>
                        <h3>{content.Name}</h3>
                    </li>

                )}
                </ul>
            </div>
        )
    }
}

export default Discoverd;

Я не знаю, в чем проблема и как ее решить, пожалуйста, помогите мне.

Большое спасибо много.

1 Ответ

1 голос
/ 10 мая 2020

Вы неправильно меняете состояние.

Попробуйте сделать this.setState ({contents}) вместо this.setState = ...

...