Tengo un menú desplegable desde el que un usuario seleccionará un valor, cada uno de estos valores tiene una descripción correspondiente. Para completar el menú desplegable, recupero los valores de mi base de datos
Una vez que un usuario ha seleccionado su valor, me gustaría actualizar otro campo (por lo tanto, un estado separado) con esa descripción correspondiente
Así es como relleno el menú desplegable hasta ahora
const [newEventName, setEventName] = useState(''); const [newEventDescription, setEventDescription] = useState(''); <Select onValueChange={newEventName => setEventName(newEventName)} placeholder="Select Event" > {eventTypeData.map(event => ( <Select.Item key={event.id} label={event.name} value={event.name} /> ))} </Select> ¿Puedo llamar a dos métodos dentro de mi onValueChange , entonces crearía una función personalizada para manejar el mapeo del valor seleccionado a su descripción apropiada, luego llamarlo dentro de onValueChange
A menos que haya una mejor manera?
Puedes hacer lo siguiente
const updateValues = (newEventName) => { // find your newEventDescription setEventName(newEventName); setEventDescription(newEventDescription); } onValueChange={newEventName => updateValues(newEventName)}Esto es bastante sencillo, cree una función y escriba la lógica para extraer la descripción de su eventName, y luego establezca ambos valores.
const setEventNameAndDesc = (newEventName) => { // extract your description from the eventName setEventName(newEventName); setEventDescription(newEventDescription); } onValueChange={newEventName => setEventNameAndDesc(newEventName)}