我有这个错误,我得到没有解决。有人知道怎么解决这个问题。我想是 typescript 的问题。我试着把风格。系统。ts,但没有工作。
lstz6jyr1#
问题是您试图一次返回多个JSX元素,JSX被转化为JavaScript,因此您现在所拥有的是
return (React.createElement(Flex, {...}, ...) React.createElement(Flex, {...}, ...));
这不是有效的JS。要解决此问题,请将其 Package 在fragment中
return ( <> <Flex ...>...</Flex> <Flex ...>...</Flex> </> )
然后转化成
return (React.createElement(React.Fragment, {...}, React.createElement(Flex, {...}, ...), React.createElement(Flex, {...}, ...) ))
这是有效的,因为每个内部React.createElement调用都是一个单独的参数,并且只返回一个元素(带子元素)。片段不会对生成的HTML产生任何更改,如果您希望这些片段位于div中,则可以将空的<></>更改为<div></div>。
React.createElement
div
<>
</>
<div>
</div>
x33g5p2x2#
不是那样的,一开始我以为会是这样的,但不是那样的。enter image description hereenter image description here
2条答案
按热度按时间lstz6jyr1#
问题是您试图一次返回多个JSX元素,JSX被转化为JavaScript,因此您现在所拥有的是
这不是有效的JS。
要解决此问题,请将其 Package 在fragment中
然后转化成
这是有效的,因为每个内部
React.createElement
调用都是一个单独的参数,并且只返回一个元素(带子元素)。片段不会对生成的HTML产生任何更改,如果您希望这些片段位于
div
中,则可以将空的<>
</>
更改为<div>
</div>
。x33g5p2x2#
不是那样的,一开始我以为会是这样的,但不是那样的。
enter image description hereenter image description here