【发布时间】:2023-04-05 06:01:01
【问题描述】:
我是 react 和 firebase 身份验证的新手。我想知道如何在我的网站上为每个登录的用户创建一个页面。例如,一个名为“Max”的用户在我的网页上注册,程序应该为他创建一个用户页面。因此,当另一个用户访问“Myapp.com/user/max”时,它应该会显示 Max 的页面。
你能给我一个概念和想法吗?
我的注册看起来像这样:-
import React from "react"
import { useHistory } from "react-router-dom"
import firebase from "firebase/app"
import "./firebase"
import fire from "./firebase"
function Signup(){
const history = useHistory()
function signUp(){
let uEmail = document.getElementById("email").value;
let uPassword = document.getElementById("password").value;
let userName = document.getElementById("userName").value;
async function send(email, password){
await firebase.auth().createUserWithEmailAndPassword(email, password).then(()=>{
console.log("successfull");
let userID = firebase.auth().currentUser.uid;
console.log(userID)
firebase.database().ref("users/"+userID+"/praivate/login credentials").set({
"userName": userName,
"userId": userID,
})
})
history.push("./login")
}
send(uEmail, uPassword);
}
return(
<div id = "signUp">
<input id = "email" placeholder = "email" />
<input id = "password" placeholder = "password" />
<input id = "userName" placeholder = "username" />
<button onClick = {signUp}>Enter</button>
</div>
)
}
export default Signup
我的应用 js 看起来像这样:-
import check from "./component/checkAt"
import './App.css';
import Nav from "./component/nav"
import Header from "./component/header"
import About from "./component/about"
import Home from "./component/home"
import Login from "./component/login"
import { Route, BrowserRouter as Router, Switch, Redirect } from 'react-router-dom';
import fire from "./component/firebase";
import Signup from "./component/Signup"
//import auth from "firebase/auth";
let log;
function App() {
return (
<>
<Router>
</Router>
<Router>
<Switch>
<Route path="/" exact component = {Home} />
<Route path="/about" exact component = {About} />
<Route path="/login" exact component = {Login} />
<Route path = "/Signup.js" exact component = {Signup} />
</Switch>
</Router>
</>
);
}
export default App;
【问题讨论】:
-
向应用程序添加一些路由/导航,并定义匹配“/user/:userId”的路由/路径,并呈现访问
userId参数并将正确数据加载到页。尝试一些事情并使用Minimal, Complete, and Reproducible 代码示例提供更新的问题。
标签: javascript reactjs firebase firebase-realtime-database firebase-authentication