This is my signup page
import {
Button,
Checkbox,
Flex,
FormControl,
FormLabel,
Heading,
Input,
Link,
Stack,
Image,
Text,
} from '@chakra-ui/react';
import React from 'react'
import { useState , useEffect } from 'react';
import { useMoralis } from "react-moralis";
import { useNavigate } from 'react-router-dom';
export default function Signup() {
const { signup, isAuthenticated, hasAuthError, auth , user } = useMoralis();
const navigate = useNavigate();
const [signupData , setSignupData] = useState({
name: '',
email: '',
password: '',
cpassword: ''
})
const {name , email , password , cpassword} = signupData
const onChange = (e) => {
setSignupData((prevState) => ({
...prevState,
[e.target.name] : e.target.value
}) )
}
useEffect(() => {
console.log('AUTH:', auth)
console.log('HASAUTH ERROR:', hasAuthError)
console.log('USER:', user)
if (auth.state === "authenticated") {
navigate('/')
console.log("auth...!!")
}
else{
console.log("Invalid credentials")
}
},[auth])
return (
<Stack minH={'100vh'} direction={{ base: 'column', md: 'row' }}>
<Flex flex={1}>
<Image
alt={'Signup Image'}
objectFit={'cover'}
src={
'https://images.unsplash.com/photo-1486312338219-ce68d2c6f44d?ixid=MXwxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHw%3D&ixlib=rb-1.2.1&auto=format&fit=crop&w=1352&q=80'
}
/>
</Flex>
<Flex p={8} flex={1} align={'center'} justify={'center'}>
<Stack spacing={4} w={'full'} maxW={'md'}>
<Heading fontSize={'2xl'}>Sign up to your account</Heading>
<FormControl id="name">
<FormLabel>Full Name</FormLabel>
<Input type="text" name='name' value={name} onChange={onChange} />
</FormControl>
<FormControl id="email">
<FormLabel>Email address</FormLabel>
<Input type="email" name='email' value={email} onChange={onChange} />
</FormControl>
<FormControl id="password">
<FormLabel>Password</FormLabel>
<Input type="password" name='password' value={password} onChange={onChange} />
</FormControl>
<FormControl id="confirm-password">
<FormLabel> Confirm Password</FormLabel>
<Input type="password" name='cpassword' value={cpassword} onChange={onChange} />
</FormControl>
<Stack spacing={10} pt={2}>
<Button
type= "submit"
loadingText="Submitting"
size="lg"
bg={'blue.400'}
color={'white'}
_hover={{
bg: 'blue.500',
}}
onClick={() => signup(signupData.name , signupData.email ,signupData.password , signupData.cpassword)}
>
Sign up
</Button>
console.log(auth)
</Stack>
<Stack pt={6}>
<Text align={'center'}>
Already a user? <Link color={'blue.400'}>Login</Link>
</Text>
</Stack>
</Stack>
</Flex>
</Stack>
);
}
I am getting an error like this..
Failed to load resource: the server responded with a status of 400 ()
AUTH: Objecterror: Error: Email address format is invalid.
at handleError (http://localhost:3000/static/js/bundle.js:124664:17)state: "error"[[Prototype]]: Object
Signup.jsx:43 HASAUTH ERROR: true
Signup.jsx:44 USER: null
Signup.jsx:51 Invalid credentials
How can I fix this .. Please help