[React Error] expected `onclick` listener to be a function, instead got a value of `object` type.

박경찬·2022년 8월 18일
0

onClick 함수를 자식 컴포넌트로 전달하면서 에러가 생겼다
에러 내용은 다음과 같다
onclick이 함수일 것으로 예상했지만 대신 object(객체) 유형의 값을 받았다고 한다.
{}<= 중괄호 를 추가 하지 않고 자식으로 넘겨주면 오류를 확인할수 있다.

React의 이벤트 핸들러는 HTML과 달리 항상 함수 객체로 지정되어야 하기 때문에
중괄호를 사용해서 함수 객체 라는걸 인지 시켜줘야한다.

//변경전
// 오류가 생긴 코드
const login = (
  toggleAccount,
  onSubmit,
  LoginOnChange,
  email,
  error,
  password,
  newAccount
)
//변경후
//첫번째 방법
const login = ({
  toggleAccount,
  onSubmit,
  LoginOnChange,
  email,
  error,
  password,
  newAccount
})
//두번째 방법
const login = (
  { toggleAccount },
  { onSubmit },
  LoginOnChange,
  email,
  error,
  password,
  newAccount
)

0개의 댓글