React TSX - 在 React element prop 中使用 Lambda 表达式

React TSX - Use Lambda expression in React element prop

我有一个 SplitButton 并想在标签中使用 Lambda 表达式,如下所示:

<SplitButton
  options={[
    {
      label: (  
            {hasValues && isSelected.length === 0 ? (
             <FormattedMessage defaultMessage = "Text A"/>
                ) : (
             <FormattedMessage defaultMessage = "Text B"/>
                )}      
      ),
      value: "myValue",
    }, ]}
/>

然而,这给了我一个错误,说“属性 value is missing in type {label: JSX.Element} but required in type {label: ReactNode; value: string}”。

有没有办法让 Lambda 表达式在 React 元素中充当 Prop?

不需要做 label: ({...}){} 正在搞乱这里的代码。

改用这个:

<SplitButton
  options={[
    {
      label:
        hasValues && isSelected.length === 0 ? (
          <FormattedMessage defaultMessage="Text A" />
        ) : (
          <FormattedMessage defaultMessage="Text B" />
        ),
      value: "myValue",
    },
  ]}
/>