partly implemented login remember me
This commit is contained in:
@@ -19,15 +19,15 @@ export default function Login() {
|
|||||||
const navigate = useNavigate()
|
const navigate = useNavigate()
|
||||||
|
|
||||||
const [fields, setFields] = useState({
|
const [fields, setFields] = useState({
|
||||||
username: '',
|
username: localStorage.getItem('username') || '',
|
||||||
password: '',
|
password: '',
|
||||||
// remember: false
|
remember: localStorage.getItem('username') ? true : false
|
||||||
})
|
})
|
||||||
|
|
||||||
const handleChange = ({target:{name, value}}) => {
|
const handleChange = ({target:{name, value}}) => {
|
||||||
// if(name == 'remember'){
|
if(name == 'remember'){
|
||||||
// return setFields(prev => ({...prev, remember:!prev.remember}))
|
return setFields(prev => ({...prev, remember:!prev.remember}))
|
||||||
// }
|
}
|
||||||
setFields(prev => ({...prev, [name]:value}))
|
setFields(prev => ({...prev, [name]:value}))
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -36,6 +36,7 @@ export default function Login() {
|
|||||||
if(!fields.username || !fields.password){
|
if(!fields.username || !fields.password){
|
||||||
throw new Error('Please provide all fields marked *')
|
throw new Error('Please provide all fields marked *')
|
||||||
}
|
}
|
||||||
|
rememberMe(fields.remember) // FUNCTION TO SAVE USERNAME OF THE USER TO LOCAL STORAGE
|
||||||
return loginUser(fields)
|
return loginUser(fields)
|
||||||
},
|
},
|
||||||
onError: (error) => {
|
onError: (error) => {
|
||||||
@@ -52,6 +53,14 @@ export default function Login() {
|
|||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
|
||||||
|
const rememberMe = (checked) => {
|
||||||
|
if(checked){
|
||||||
|
localStorage.setItem('username', fields.username)
|
||||||
|
}else{
|
||||||
|
localStorage.removeItem('username')
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<div className="app">
|
<div className="app">
|
||||||
<div className="app-wrap">
|
<div className="app-wrap">
|
||||||
@@ -81,7 +90,7 @@ export default function Login() {
|
|||||||
<div className="col-12">
|
<div className="col-12">
|
||||||
<div className="d-block d-sm-flex align-items-center">
|
<div className="d-block d-sm-flex align-items-center">
|
||||||
<div className="form-check">
|
<div className="form-check">
|
||||||
<input className="form-check-input" type="checkbox" id="gridCheck" />
|
<input className="form-check-input" type="checkbox" id="gridCheck" name='remember' checked={fields.remember} onChange={handleChange} disabled={!fields.username ? true : false} />
|
||||||
<label className="form-check-label text-black" htmlFor="gridCheck">
|
<label className="form-check-label text-black" htmlFor="gridCheck">
|
||||||
Remember Me
|
Remember Me
|
||||||
</label>
|
</label>
|
||||||
|
|||||||
Reference in New Issue
Block a user