I can log in user if it enters correct password but when I enter wrong password it shows me "access_token" is undefined.
This is my useToken.js file
import { useState } from "react";
export default function useToken() {
const getToken = () => {
const tokenString = sessionStorage.getItem("access_token");
const userToken = JSON.parse(tokenString);
return userToken?.access_token;
};
const [token, setToken] = useState(getToken());
const saveToken = userToken => {
sessionStorage.setItem('access_token', JSON.stringify(userToken.data));
setToken(userToken.data.access_token);
};
return {
setToken: saveToken,
token
}
}
This is inside my Login.js file where I handle this submit
const handleSubmit = async e => {
e.preventDefault();
const token = await loginUser({
email,
password
});
setToken(token);
}
And finally in my App.js file I show login page by:
if (!token) {
return <Login setToken={setToken} />
}
How can I check for undefined if they enter wrong password or username redirect to login page.