Stackblitz Error: Can't find package: firebase

Stackblitz Error: Can't find package: firebase

已通过命令 npm i firebase 安装了 firebase。也尝试了 npm i firebase@8.1.1(教程中使用了 firebase 的 Nov2020 版本)和 npm i firebase --save 无济于事。

Here 是我的 Stackblitz 项目 link 供您参考。

S.O.S.

请查看文档:https://firebase.google.com/docs/web/setup

你的 firebase.js 应该是这样的

import { initializeApp } from 'firebase/app';
import { getFirestore } from 'firebase/firestore/lite';

const firebaseConfig = {
  apiKey: 'AIzaSyCUCwjxhnH-D99j1dKmI-tyL3Q057FI1WA',
  authDomain: 'cp-react-robinhood.firebaseapp.com',
  projectId: 'cp-react-robinhood',
  storageBucket: 'cp-react-robinhood.appspot.com',
  messagingSenderId: '112144437320',
  appId: '1:112144437320:web:bf5dd8d3a3f0d83bc6c87d',
  measurementId: 'G-NLE375QG7B',
};
const firebaseApp = initializeApp(firebaseConfig);
const db = getFirestore(firebaseApp);

export { db }; 

你的 Stats.js 应该这样开始:

import React, { useState, useEffect } from 'react';
import './Stats.css';
import axios from 'axios';
import StatsRow from './StatsRow';
import { db } from './firebase';
import { collection, getDocs } from 'firebase/firestore/lite';

// f u
function Stats() {
  const TOKEN = 'bvkgi0v48v6vtohioj2g';
  const BASE_URL = 'https://finnhub.io/api/v1/quote';
  const [stockData, setstockData] = useState([]);
  const [myStocks, setmyStocks] = useState([]);
  const getMyStocks = () => {
    const myStocksCollection = collection(db, 'cities');
    getDocs(myStocksCollection).then((snapshot) => {
      let promises = [];
      let tempData = [];
      snapshot.docs.map((doc) => {
        console.log(snapshot.docs);
        promises.push(
          getStocksData(doc.data().ticker).then((res) => {
            tempData.push({ id: doc.id, data: doc.data(), info: res.data });
          })
        );
      });
    });
  };

您刚刚以错误的方式导入了 firebase。您必须导入您需要的每个模块。