如何将作为道具传递的两个函数添加到 React 和 Material UI 中的 onChange 事件?

问题描述

我想将作为道具传入的两个函数添加到 onChange 事件。 handleInput 是在更改时设置值的函数validate 是验证输入的函数

我一直在阅读这些帖子,但他们的答案不起作用:How to pass two functions to onClick event in reactcall two functions within onchange event in react

const FormFields = (props) => {

   const { values,handleInput,validate } =
    props;

   // Created a function to return two functions passed as props.
   const handleOnChange = (event) => {
      return {
         handleInput,validate,};
   };

   return (
      <TextField
          name="selection"
          label="Select"
          value={values}
          onChange={handleOnChange} // <- Function with two functions collapsed.
      />
   )
}

解决方法

在句柄 OnChange 中调用这些函数而不是返回它们

   const handleOnChange = (event) => {
      handleInput(event)
      validate(event)
   };
,

您可以简单地添加一个调用其他函数的任意函数,例如:

<TextField
          name="selection"
          label="Select"
          value={values}
          onChange={()=> {functionOne(); functionTwo()}} // <- Function with two functions collapsed.
      />