首页 > 解决方案 > 这让我发疯 - 第 42:40 行:'firebase' 未定义 no-undef

问题描述

我无法弄清楚我的代码有什么问题。我仍在学习反应,所以请多多包涵:) 这是来自我正在关注的教程,虽然他们没有问题,但由于某种原因我的代码没有编译。已经让我发疯了 8 个小时!请向下滚动到 ** ** 所在的位置,谢谢大家!!

import React, { useState } from 'react'
import { Button } from "@material-ui/core";
import { storage, db } from "./firebase";

function ImageUpload({username}) {
    const [image, setImage] = useState('null');
    const [progress, setProgress] = useState(0);
    const [caption, setCaption] = useState('');

    const handleChange = (e) => {
        if (e.target.files[0]) {
            setImage(e.target.files[0]);
        }
    };

    const handleUpload = () => {
        const uploadTask = storage.ref(`images/${image.name}`).put(image);

        uploadTask.on(
            "state_changed",
            (snapshot) => {
                // progress function...
                const progress = Math.round(
                (snapshot.bytesTransferred / snapshot.totalBytes) * 100
                );
                setProgress(progress);
            },
            (error) => {
                // error function...
                console.log(error);
                alert(error.message);
            },
            () => {
                // complete function...
                storage
                    .ref("images")
                    .child(image.name)
                    .getDownloadURL()
                    .then(url => {
                        // post image inside db
                        db.collection("posts").add({
                            **timestamp: firebase.firestore.FieldValue.serverTimestamp(),**
                            caption: caption,
                            imageUrl: url,
                            username: username,
                        })

                    })
            }
        )
    }

    return (
        <div>
            <h1>abc</h1>

            <input type="text" placeholder='Enter a caption...' onChange={event => setCaption(event.target.value)} value={caption}/>
            <input type="file" onChange={handleChange} />
            <Button onClick={handleUpload}>
                Upload
            </Button>
        </div>
    )
}

export default ImageUpload

标签: javascriptreactjsfirebase

解决方案


我们正在做同样的教程。2:37:30 的视频时间戳不知何故神奇地出现在顶部

import firebase from "firebase";

谢谢你的提问。


推荐阅读