Огневая база index.js

# #javascript #firebase

Вопрос:

Я не могу импортировать базу данных в свое приложение.

./src/Feed.js Ошибка при попытке импорта: «бд» не экспортируется из». /firebase».

 import * as firebase from 'firebase';
import 'firebase/firestore';

const firebaseConfig = {
    apiKey: "",
    authDomain: "",
    projectId: "",
    storageBucket: "",
    messagingSenderId: "",
    appId: ""
};


const firebaseApp=firebase.initializeApp(firebaseConfig);
const db=firebaseApp.firestore();
const auth=firebase.auth();


export default {db,auth};
 

Ответ №1:

Я думаю, это должно сработать.

 import * as firebase from 'firebase';
import 'firebase/firestore';

const firebaseConfig = {
    apiKey: "",
    authDomain: "",
    projectId: "",
    storageBucket: "",
    messagingSenderId: "",
    appId: ""
};

const firebaseApp = firebase.initialiseApp(firebaseConfig);
export const db = firebaseApp.firestore();
export const auth = firebase.auth();

// You can remove the export default.

 

Комментарии:

1. я хочу экспортировать их, чтобы я мог использовать их в другом файле js с импортом

2. Да, я понимаю. Я добавил ключевые export слова перед объявлением. См. строки 14 и 15.

3. я попробовал это сделать, но, к сожалению, это не сработало. Аутентификация в порядке, но бд не импортируется, я не понял проблемы.

4. Не могли бы вы поделиться кодом, в котором вы импортируете базу данных?

5. я поделился кодом

Ответ №2:

Файл, который я хочу импортировать в бд:

 import React,{useState,useEffect} from 'react'
import './Feed.css'
import CreateIcon from '@mui/icons-material/Create';
import InputOption from './InputOption'
import ImageIcon from '@mui/icons-material/Image';
import SubscriptionsIcon from '@mui/icons-material/Subscriptions';
import EventNoteIcon from '@mui/icons-material/EventNote';
import CalendarViewDayIcon from '@mui/icons-material/CalendarViewDay';
import Post from './Post';

import { db } from"./firebase";

function Feed() {

    const[posts,setPosts]=useState([]);

    useEffect(()=>{
        db.collection('posts').onSnapshot(snapshot=>{
            setPosts(snapshot.docs.map(doc=>(
                {
                    id:doc.id,
                    data:doc.data(),

                }
            )))
        })
    },[])

    const sendPost=e=>{
        e.preventDefault();

    }
    return (
        <div className="feed">
            <div className="feed_inputContainer">
                <div className="feed_input">
                <CreateIcon/>
                <form>
                    <input type="text" placeholder="Start a post" />
                    <button onClick={sendPost} type="submit ">Send</button>
                </form>
                </div>
                <div className="feed_inputOptions">
                    <InputOption Icon={ImageIcon} title='Photo' color="#70B5F9"/>

                    <InputOption Icon={SubscriptionsIcon} title="Video" color="#E7A33E"/>
                    
                    <InputOption Icon={EventNoteIcon} title="Event" color="#C0CBCD"/>

                    <InputOption Icon={CalendarViewDayIcon} title="Write article" color="#7FC15E"/>

                </div>
            </div>
            {posts.map(([post])=>{
                <Post/>
            })}

            <Post name="Sonny Shanga" description='This is a test' 
            message='WOW this worked' />
        </div>
    )
}

export default Feed

 

Комментарии:

1. Похоже, это не ответ. Пожалуйста, отредактируйте свое сообщение, чтобы включить вспомогательную информацию, а не публиковать его в качестве ответа