JSX 不接受三元语句(意外标记“?”)
Ternary statement not accepted in JSX (Unexpected token "?")
使用三元语句根据 shouldRenderPlanA
属性(解析为真或假)呈现不同的 JSX。然而,问题是 shouldRenderPlanA
三元检查出现错误,如下所示:
“意外令牌 ?
,需要令牌 :
”
谁能解释我可能哪里出错了? TIA
return (
<>
{options.map(option)}
<StyledRow>
{variousOptions.map((opt) => (
{shouldRenderPlanA ? (
<StyledLabelOptionOne
variousProps={variousProps}
/>
) : (
<StyledLabelOptionTwo
variousProps={variousProps}
/>
)}
))}
</StyledRow>
</>
);
我怀疑这与地图内部发生的检查有关?
您不能在 JSX 中使用嵌套大括号 {}
,删除内部大括号即可:
return (
<>
{options.map(option)}
<StyledRow>
{variousOptions.map((opt) => shouldRenderPlanA ? (
<StyledLabelOptionOne
variousProps={variousProps}
/>
) : (
<StyledLabelOptionTwo
variousProps={variousProps}
/>
))}
</StyledRow>
</>
);
问题来了。
(
{shouldRenderPlanA ? (
你不能期望 return 对象,而是
(shouldRenderPlanA ?
或者尝试在开头写一些简单的东西,例如。 flag?1:0
在插入其他东西之前让它工作:)
您有一个错误,因为您没有return地图中的值
也许这可以帮到你
return (
<>
{options.map(option)}
<StyledRow>
{variousOptions.map((opt) => {
return shouldRenderPlanA ? (
<StyledLabelOptionOne
variousProps={variousProps}
/>
) : (
<StyledLabelOptionTwo
variousProps={variousProps}
/>
}
))}
</StyledRow>
</>
);
您必须删除括号,return 元素
使用三元语句根据 shouldRenderPlanA
属性(解析为真或假)呈现不同的 JSX。然而,问题是 shouldRenderPlanA
三元检查出现错误,如下所示:
“意外令牌 ?
,需要令牌 :
”
谁能解释我可能哪里出错了? TIA
return (
<>
{options.map(option)}
<StyledRow>
{variousOptions.map((opt) => (
{shouldRenderPlanA ? (
<StyledLabelOptionOne
variousProps={variousProps}
/>
) : (
<StyledLabelOptionTwo
variousProps={variousProps}
/>
)}
))}
</StyledRow>
</>
);
我怀疑这与地图内部发生的检查有关?
您不能在 JSX 中使用嵌套大括号 {}
,删除内部大括号即可:
return (
<>
{options.map(option)}
<StyledRow>
{variousOptions.map((opt) => shouldRenderPlanA ? (
<StyledLabelOptionOne
variousProps={variousProps}
/>
) : (
<StyledLabelOptionTwo
variousProps={variousProps}
/>
))}
</StyledRow>
</>
);
问题来了。
(
{shouldRenderPlanA ? (
你不能期望 return 对象,而是
(shouldRenderPlanA ?
或者尝试在开头写一些简单的东西,例如。 flag?1:0
在插入其他东西之前让它工作:)
您有一个错误,因为您没有return地图中的值
也许这可以帮到你
return (
<>
{options.map(option)}
<StyledRow>
{variousOptions.map((opt) => {
return shouldRenderPlanA ? (
<StyledLabelOptionOne
variousProps={variousProps}
/>
) : (
<StyledLabelOptionTwo
variousProps={variousProps}
/>
}
))}
</StyledRow>
</>
);
您必须删除括号,return 元素