I have 2 questions ...
The loading component is not rendering:
const Register: FC<RouteComponentProps> = () => {
const [loading, setLoading] = useState<boolean>(false)
const [success, setSuccess] = useState<boolean>(false)
...
const onSubmit = async(values: Values) => {
setLoading(true)
try {
const response = await register({
variables: { data: { firstName: values.first_name, lastName: values.last_name, email: values.user_email, password: values.password } }
})
setLoading(false)
if (response && response.data && response.data.register) {
setSuccess(true)
}
} catch (error) {
setLoading(false)
...
}
}
return (
...
{ loading && <Loading/> }
)
Where am I wrong, kindly let me know.
Thank you!
You dont need to show loading to min 1 second since loading icon is already shown when fetching data and in real life it will be more than 1 sec.
if u want to set min 1 sec anyways
try {
const response = await register({
variables: { data: { firstName: values.first_name, lastName: values.last_name, email: values.user_email, password: values.password } }
})
//change here
setTimeout(() => setLoading(false), 1000);