reactjs onChange未被调用React

gupuwyp2  于 2022-12-26  发布在  React
关注(0)|答案(1)|浏览(181)

我正在尝试调试一个react复选框,但始终没有调用onChange事件。我添加了一个console.log进行测试,但始终没有运行。以下是复选框的代码。问题是什么?

return (
    <div className="RampPane">
      <div className="RampPane--content">
        <p className="RampText">{transaction.merchant} </p>
        <b>{moneyFormatter.format(transaction.amount)}</b>
        <p className="RampText--hushed RampText--s">
          {transaction.employee.firstName} {transaction.employee.lastName} - {transaction.date}
        </p>
      </div>
      <InputCheckbox
        id={transaction.id}
        checked={approved}
        disabled={loading}
        onChange={async (newValue) => {
          console.log("click")
          await consumerSetTransactionApproval({
            transactionId: transaction.id,
            newValue,
          })

          setApproved(newValue)
        }}
      />
    </div>
  )

下面是InputCheckBox组件

return (
    <div className="RampInputCheckbox--container" data-testid={inputId}>
      <label
        className={classNames("RampInputCheckbox--label", {
          "RampInputCheckbox--label-checked": checked,
          "RampInputCheckbox--label-disabled": disabled,
        })}
      />
      <input
        id={inputId}
        type="checkbox"
        className="RampInputCheckbox--input"
        checked={checked}
        disabled={disabled}
        onChange={() => onChange(!checked)}
      />
    </div>
  )
rqqzpn5f

rqqzpn5f1#

如果InputCheckBox是呈现html输入元素的自定义构建的react组件,请尝试检查onChange处理程序是否正确传递到根组件。如果不尝试在此处包括该组件以获得更好的了解

相关问题