Front/JavaScript
[JS] onClick 함수 - 파라미터 전달하기
마이구미포포
2022. 7. 11. 15:31
콜백함수에 인자를 넘겨주냐 / 넘겨주지 않느냐에 따라 onClick 이벤트 함수 작성법이 달라진다.
① 아무런 인자도 넘겨주지 않을 때
return (
<button onClick={()=>{alert("Hello")}}> CLICK </button>
)
간단한 함수라면 이벤트에 바로 작성해주거나
const onClick=()=>{alert("Hello")};
return (
<button onClick={onClick} /> CLICK </button>
)
함수 내용이 조금 복잡하다면, 바깥에 따로 선언해주고 onClick 이벤트에서 호출만 해주면 된다
② 파라미터를 넘길 때
onClick 이벤트를 통해 함수에 파라미터 값을 넘겨주려면, 아래처럼 화살표 함수를 이용하면 된다
const onClick=(params)=>{
console.log(params);
};
return (
<button onClick={()=>{onClick(params)}} /> CLICK </button>
)
이벤트 객체와 파라미터 둘 다 넘겨주고 싶다면
const onClick=(params,e)=>{
console.log(params);
};
return (
<button onClick={()=>{onClick(params,e)}} /> CLICK </button>
)
위와 같이 이벤트 객체도 같이 넘겨주면 된다
* 이벤트 객체만 넘겨주고 싶다면
const onClick=(e)=>{
console.log("hELLO");
};
return (
<button onClick={(e)=>{onClick(e)}} /> CLICK </button>
)
이렇게 작성해도 되지만
const onClick=(e)=>{
console.log("hELLO");
};
return (
<button onClick={onClick} /> CLICK </button>
)
파라미터를 넘겨주지 않는 것 처럼 이렇게 간단히 작성해도 상관 없다
주의해야될 점은 onClick 이벤트를 통해 함수에 값을 넘겨줄 때 무작정 인자를 넘겨주는 것이 아니라 화살표 함수를 이용해야한다는 것이다