如何使用默认参数的clickHandler

问题描述 投票:0回答:1

问题:我尝试在 onClick 上制作两个例程;第一个例程是通过单击访问时,第二个例程是通过直接调用触发时。但是当 onClick 处理带有默认参数的函数时,我发现语法错误。

问题:我想通过使用默认参数来使用一个clickHandler函数。

function Element() {
  const clickHandler = (isCall: boolean = false) => {
    if (isCall) {
      Routine 1
    }
    else {
      Routine 2
    }
  };
  return <button onClick={clickHandler} id={"someId"} />;
}

/**--------from other code, to trigger the routine 2-------**/
document.getElementById("someId").click(true); // <-this trigger the routine 2
javascript html reactjs typescript dom
1个回答
0
投票

默认情况下,clickHandler函数将接收事件对象,但您想接收isCall参数。
因此您可以在不带参数的onClick侦听器中使用箭头函数。(您的clickHandler将接收默认参数。)

   return <button onClick={()=>clickHandler()} id={"someId"} />;
© www.soinside.com 2019 - 2024. All rights reserved.