reactjs - React TSX - Usar expresión Lambda en la propiedad de un elemento de React
Tengo un SplitButton y quiero usar una expresión Lambda en la etiqueta así:
<SplitButton
options={[
{
label: (
{hasValues && isSelected.length === 0 ? (
<FormattedMessage defaultMessage = "Text A"/>
) : (
<FormattedMessage defaultMessage = "Text B"/>
)}
),
value: "myValue",
}, ]}
/>
Sin embargo, eso me está dando un error que dice "Falta el valor de la propiedad en el tipo {label: JSX.Element} pero es obligatorio en el tipo {label: ReactNode; value: string}."
¿Hay alguna manera de hacer que la expresión Lambda funcione como una Prop en un elemento de React?
Respuesta #1
No hay necesidad de hacer label: ({...}), {} están estropeando el código aquí.
Usa esto en su lugar:
<SplitButton
options={[
{
label:
hasValues && isSelected.length === 0 ? (
<FormattedMessage defaultMessage="Text A" />
) : (
<FormattedMessage defaultMessage="Text B" />
),
value: "myValue",
},
]}
/>
