簡體   English   中英

./node_modules/firebase/index.js 錯誤:ENOENT:沒有這樣的文件或目錄

[英]./node_modules/firebase/index.js Error: ENOENT: no such file or directory

由於某種原因,我的 firebase 模塊出現錯誤,無法接收。 這是我在 VS 代碼上的文件結構:

在此處輸入圖片說明

這些是我需要從 firebase 導入身份驗證的 2 個文件:

登錄.js

import React, {useState} from 'react';
import "./Login.css";
import {Link, useHistory} from "react-router-dom";
import { auth } from "../firebase"

function Login() {
    const history = useHistory()

    const [email,setEmail] = useState("");
    const [password,setPassword] = useState("")

    const login = (e) => {
        e.preventDefault();
        auth
        .signInWithEmailAndPassword(email,password)
        .then((auth) =>{
            history.push('/');
        })
        .catch(e=>alert(e.message))
    }
    const register = (e) => {
        e.preventDefault();
        auth
        .createUserInWithEmailAndPassword(email,password)
        .then((auth) => {
            history.push('/');
        })
        .catch(e=>alert(e.message))
        
    }
    return (
        <div className="login">
            <Link to="/">
                <img className="login__logo"
                src="http://pngimg.com/uploads/amazon/amazon_PNG24.png"
                alt=""
                />
            </Link>

            <div className = "login__container">
                <h1>Sign in </h1>
                <form>
                <h5>Email</h5>
                <input value={email} onChange = {event => setEmail(event.target.value)} type="email"/>
                <h5>Password</h5>
                <input value={password} onChange = {event => setPassword(event.target.value)}  type="password"/>
                <button onClick = {login} type="submit" className = "login__signInButton"> Sign in</button>
                </form>        

                <p>                         
                    By signing-in you agree to Amazon's Conditions of Use & Sale. Please see our Privacy Notice, our Cookies Notice and our Interest-Based Ads Notice
                </p>
                <button onClick = {register} className="login__registerButton">Create your Amazon Account</button>    
            </div>
        </div>
    )
}

export default Login

應用程序.js

import React, {useEffect} from "react";
import { BrowserRouter as Router, Switch, Route } from "react-router-dom";
import "./App.css";
import Header from "./components/Header";
import Home from "./components/Home";
import Checkout from "./components/Checkout";
import Login from "./components/Login";
import { useStateValue } from "./StateProvider";
import { auth } from "./firebase";

function App() {
  const [{user},dispatch] = useStateValue();
  useEffect(() =>{
    const unsubscribe = auth.onAuthStateChanged((authUser) =>{
      if(authUser){
        dispatch({
          type:"SET_USER",
          user: authUser
        })

      }else{
        dispatch({
          type:"SET_USER",
          user: null
        })
      }
  
  });
  return () => {
    unsubscribe();
  }
  
  },[])

  console.log("USER is >>>", user);

  return (
    <Router>
      <Switch>
        <Route path="/checkout">
          <Header />
          <Checkout />
        </Route>
        <Route path="/login">
          <Login/>
        </Route>
        <Route path="/">
          <Header />
          <Home />
        </Route>
      </Switch>
    </Router>
  );
}

export default App;

我嘗試了不同的東西,但仍然選擇錯誤的文件並給我一個錯誤。 試過 npm i 和 npm i firebase 都沒有用。

謝謝

不確定這是否會有所幫助,但是當我將 firebase 升級到 7.24.0 版時發生了確切的事情。

我將版本改回 7.16.0,現在可以使用了。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM