Quiero pasar la identificación y el valor de un campo de texto a una función en el evento onChange.
He intentado un montón de cosas diferentes, pero no puedo devolver el evento de onChange porque solo pasa el valor.
mi funcion
const handleFieldChange = (value: any, name: string) => setFields({ ...fields, [name]: value, });Y mi campo de texto
<TextField id="test" label="Test" onChange={(event) => handleFieldChange(event, "test")} defaultValue="Test" />Debido a que el "evento" solo contiene el valor y no el evento real, tengo que pasar la ID por separado y no puedo simplemente hacer onChange={handleFieldChange}
Esto parece una solución fea porque tengo cientos de TextFields
Teniendo en cuenta que su event solo contiene el valor y no el evento real, lo más probable es que el problema se encuentre dentro de su componente TextField. Lo más probable es que la implementación de onChange devuelva event.target.value en lugar de solo event .
puede acceder a la propiedad de identificación del campo de texto sin pasar como segundo argumento
const handleFieldChange = (event: React.FormEvent<HTMLInputElement>) => { const {id: name, value} = event.currentTarget; setFields({ ...fields, [name]: value, }); }HTML
<TextField id="test" // IMP! This is used in the handler label="Test" onChange={handleFieldChange} defaultValue="Test" />