ریاکتجیاس - ریاکت TSX - استفاده از عبارت لامبدا در خصوصیت عنصر ریاکت
من یک دکمه تقسیمشده دارم و میخواهم از یک عبارت لامبدا در برچسب آن به این صورت استفاده کنم:
<SplitButton
options={[
{
label: (
{hasValues && isSelected.length === 0 ? (
<FormattedMessage defaultMessage = "Text A"/>
) : (
<FormattedMessage defaultMessage = "Text B"/>
)}
),
value: "myValue",
}, ]}
/>
با این حال، این به من خطا میدهد که میگوید «مقدار ویژگی در نوع {label: JSX.Element} وجود ندارد اما در نوع {label: ReactNode; value: string} الزامی است.»
آیا روشی وجود دارد که بتوان عبارت Lambda را به عنوان یک Prop در یک عنصر React استفاده کرد؟
پاسخ شماره ۱
نیازی به انجام label: ({...}) نیست، {} اینجا کد را به هم ریختهاند.
به جای آن این را استفاده کنید:
<SplitButton
options={[
{
label:
hasValues && isSelected.length === 0 ? (
<FormattedMessage defaultMessage="Text A" />
) : (
<FormattedMessage defaultMessage="Text B" />
),
value: "myValue",
},
]}
/>
