Так что я строю приложение стека Mern с аутентификацией, но я сталкиваюсь с ошибкой в своей функции входа в систему. < /p>
Ошибка: < /p>
Код: Выделить всё
AuthProvider.js:29 Error
at Object.loginAction (AuthProvider.js:27:1)
overrideMethod @ hook.js:608
loginAction @ AuthProvider.js:29
await in loginAction
handleSubmit @ Login.jsx:16
processDispatchQueue @ react-dom-client.development.js:16122
(anonymous) @ react-dom-client.development.js:16725
batchedUpdates$1 @ react-dom-client.development.js:3129
dispatchEventForPluginEventSystem @ react-dom-client.development.js:16281
dispatchEvent @ react-dom-client.development.js:20352
dispatchDiscreteEvent @ react-dom-client.development.js:20320
< /code>
Пароль правильный, так как я уже накрыл API с почтальником. Для обращения в бэкэнд (который решается прямо сейчас): не удается прочитать свойства неопределенного (чтение '_id') и поднять на ObjectId. alt = "Экриншот ошибки на моей машине" src = "https://i.sstatic.net/6hiyjegb.png"/>
Моя база кодовой p>
components/router/routes.js:
import React from "react";
import { Navigate, Outlet } from "react-router-dom";
import { useAuth } from "../../hooks/AuthProvider";
const PrivateRoute = () => {
const user = useAuth();
if(!user.token) return
return ;
};
export default PrivateRoute;
Код: Выделить всё
import React from 'react';
import { useState } from 'react';
import { useAuth } from '../../hooks/AuthProvider';
const Login = () => {
const [input, setInput] = useState({
email:"",
password:"",
});
const auth = useAuth();
const handleSubmit = (e) => {
e.preventDefault();
if(input.email !== "" && input.password !== ""){
auth.loginAction(input);
return;
}
alert("please provide a valid input!");
};
const handleInput = (e) => {
const { name, value } = e.target;
setInput((prev) => ({
...prev,
[name] : value,
}));
};
return (
[url=#]
[img]https://flowbite.s3.amazonaws.com/blocks/marketing-ui/logo.svg[/img]
Flowbite
[/url]
Sign in to your account
Your email
Password
Remember me
[url=#]Forgot password?[/url]
Sign in
Don’t have an account yet? [url=#]Sign up[/url]
);
};
export default Login;
Код: Выделить всё
import React from "react";
import { useAuth } from "../../hooks/AuthProvider";
const Dashboard = () => {
const auth = useAuth();
return(
Welcome! {auth.user?.username}
auth.logOut()} className="btn-submit">
logout
);
};
export default Dashboard;
< /code>
app.js:
import NavBar from './components/navbar/NavBar';
import './App.css';
import AuthProvider from './hooks/AuthProvider';
import Login from './components/login/Login';
import PrivateRoute from './components/router/route';
import Dashboard from './components/dashboard/Dashboard';
import { BrowserRouter as Router, Routes, Route } from 'react-router-dom';
function App() {
return (
{/* Other routes */}
);
}
export default App;
Пожалуйста, помогите мне здесь!
Подробнее здесь: https://stackoverflow.com/questions/794 ... ponse-data