Estoy usando la biblioteca react-select/creatable para mostrar menús desplegables con opciones. Quería hacer uso de la propiedad formatCreateLabel que muestra una etiqueta. Esta etiqueta se basa en la opción superior en el menú desplegable, por lo que esencialmente en la función formatCreateLabel, estoy ordenando mi lista, que es dinámica, y en función de la opción superior, muestro la opción de creación. Algunas cosas a tener en cuenta aquí: la opción de creación depende de la opción superior en la lista desplegable. También quería mostrar la opción de creación incluso si hay una coincidencia exacta.
Fragmento de la función de formato -
const formatCreateLabel = (input) => { const options = getSortedList(input, list); // using sort-matcher library for sorting const firstItem = _.first(options); const label = _.get(firstItem, 'label'); if (!_.isNil(firstItem)) return `Create wildcard "${label}"`; }; /** My list option looks something like this (eg.) const listOptions = [ { label: 'alpha', key: 'a', value: 'a' }, { label: 'alpea', key: 'ae', value: 'ae' }, { label: 'beta', key: 'b', value: 'b' }, { label: 'user.name', key: 'user.name', value: 'user.name' }, { label: 'name', key: 'name', value: 'name' }, ]; **/ <CreatableSelect key={key} options={list} value={value} onChange={onChange} placeholder="Select..." formatCreateLabel={formatCreateLabel} {...props} />El problema es que la etiqueta a veces se muestra, a veces no, aunque puedo ver que la función formatCreateLabel devuelve un valor válido. ¿Cuál podría ser el problema aquí? Además, ¿hay alguna manera de seguir mostrando la opción Crear nueva incluso si hay una coincidencia exacta?