YIGeon
YIGeon

Reputation: 57

Why does TypeError occur in react hooks

const FindEmail = () => {
const {userEmail, setUserEmail} = useState('');

    const onChangeEmail = (e) => {
        setUserEmail(e.target.value);
    }; 
    return (
      <Input className="inputEmail" value={userEmail} onChange={onChangeEmail}>
      );
    };

TypeError: setUserEmail is not a function when data is entered into input from these codes How can I solve the problem? *Input starts with a capital letter because i am using reactstrap

Upvotes: 0

Views: 45

Answers (2)

derrmru
derrmru

Reputation: 61

Replace curly brackets with square brackets when declaring userEmail state:

const FindEmail = () => {
const [userEmail, setUserEmail] = useState('');

    const onChangeEmail = (e) => {
        setUserEmail(e.target.value);
    }; 
    return (
      <Input className="inputEmail" value={userEmail} onChange={onChangeEmail}>
    );
};

Upvotes: 1

Dennis Vash
Dennis Vash

Reputation: 53934

useState hook returns a tuple and not an object:

const [userEmail, setUserEmail] = useState('');

Upvotes: 2

Related Questions