最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

javascript - "TypeError: db._checkNotDeleted is not a function" When creating a Storage Ref on FirebaseReact -

programmeradmin3浏览0评论

I'm creating an app on React that uses Firebase for backend data and want to be able to upload pictures. When trying to get a Storage Ref through firebase, I get the following error:

Every time I try to get a ref to the Storage, I get this error. I also use the realtime-databse on firebase, but I don't think that would interfere at all. Below is the code that is called:

import database, { auth, provider, storage } from '../../ponents/utils/firebase.js';
import { uploadBytes } from '@firebase/storage';

...
        handleSubmit(e) {
        e.preventDefault();

        const file = e.target[0].files[0];
        console.log("File: ", file);
        
        if (!file) {
            console.log("No file!");
          } else {
            const storageRef = ref(storage, `images/${file.name}`);
            uploadBytes(storageRef, file);
            console.log("Uploaded file!");
            console.log("File: " + file);
          }
        
    }

firebase.js (my config file):

import { initializeApp } from 'firebase/app';
import { getDatabase } from 'firebase/database';
import  { getAuth, GoogleAuthProvider } from 'firebase/auth';
import { getStorage } from 'firebase/storage';

const firebaseConfig = {
  apiKey: process.env.REACT_APP_APIKEY,
  authDomain: process.env.REACT_APP_AUTHDOMAIN,
  databaseURL: process.env.REACT_APP_DATABASEURL,
  projectId: process.env.REACT_APP_PROJECTID,
  storageBucket: process.env.REACT_APP_STORAGEBUCKET,
  messagingSenderId: process.env.REACT_APP_MESSAGINGSENDERID,
  appId: process.env.REACT_APP_APPID,
  measurementId: process.env.REACT_APP_MEASUREMENTID
};

// Initialize Firebase
const app = initializeApp(firebaseConfig);
const database = getDatabase(app);

export const storage = getStorage(app);
export default database;
export const auth = getAuth(app);

export const provider = new GoogleAuthProvider();

Does anyone have any ideas as to why this is happening? Thank you!

I'm creating an app on React that uses Firebase for backend data and want to be able to upload pictures. When trying to get a Storage Ref through firebase, I get the following error:

Every time I try to get a ref to the Storage, I get this error. I also use the realtime-databse on firebase, but I don't think that would interfere at all. Below is the code that is called:

import database, { auth, provider, storage } from '../../ponents/utils/firebase.js';
import { uploadBytes } from '@firebase/storage';

...
        handleSubmit(e) {
        e.preventDefault();

        const file = e.target[0].files[0];
        console.log("File: ", file);
        
        if (!file) {
            console.log("No file!");
          } else {
            const storageRef = ref(storage, `images/${file.name}`);
            uploadBytes(storageRef, file);
            console.log("Uploaded file!");
            console.log("File: " + file);
          }
        
    }

firebase.js (my config file):

import { initializeApp } from 'firebase/app';
import { getDatabase } from 'firebase/database';
import  { getAuth, GoogleAuthProvider } from 'firebase/auth';
import { getStorage } from 'firebase/storage';

const firebaseConfig = {
  apiKey: process.env.REACT_APP_APIKEY,
  authDomain: process.env.REACT_APP_AUTHDOMAIN,
  databaseURL: process.env.REACT_APP_DATABASEURL,
  projectId: process.env.REACT_APP_PROJECTID,
  storageBucket: process.env.REACT_APP_STORAGEBUCKET,
  messagingSenderId: process.env.REACT_APP_MESSAGINGSENDERID,
  appId: process.env.REACT_APP_APPID,
  measurementId: process.env.REACT_APP_MEASUREMENTID
};

// Initialize Firebase
const app = initializeApp(firebaseConfig);
const database = getDatabase(app);

export const storage = getStorage(app);
export default database;
export const auth = getAuth(app);

export const provider = new GoogleAuthProvider();

Does anyone have any ideas as to why this is happening? Thank you!

Share Improve this question edited Dec 9, 2021 at 23:46 Quinton Price asked Dec 9, 2021 at 23:10 Quinton PriceQuinton Price 2791 gold badge2 silver badges11 bronze badges
Add a ment  | 

1 Answer 1

Reset to default 15

I found the issue while watching a video of someone setting up their storage bucket.

Essentially, because I am already using ref for my realtime database, and import that mand from the realtime database folder, my storage ref was actually a realtime database ref. To fix this, I imported my storage ref function like so:

import { ref as sRef } from 'firebase/storage';

then used sRef instead of ref.

Hope this helps anyone who had the same issue! It was frustrating to hunt down

与本文相关的文章

发布评论

评论列表(0)

  1. 暂无评论