【发布时间】:2018-03-17 11:57:36
【问题描述】:
我有一个 React 组件,在组件的 render 方法中我有这样的东西:
render() {
return (
<div>
<div>
// removed for brevity
</div>
{ switch(...) {} }
<div>
// removed for brevity
</div>
</div>
);
}
现在的重点是我有两个div 元素,一个在顶部,一个在底部,它们是固定的。在中间我想要一个 switch 语句,并根据我的状态中的一个值,我想渲染一个不同的组件。所以基本上,我希望两个 div 元素始终被固定,并且每次都在中间渲染一个不同的组件。我正在使用它来实施多步骤付款程序)。不过,就像目前的代码一样,它不起作用,因为它给了我一个错误,说switch 是意外的。有什么想法可以实现我想要的吗?
【问题讨论】:
-
好吧,您不需要在
return语句甚至render方法中包含所有这些逻辑。您能否将每个<div>定义为一个常量,然后使用switchbefore 你的return来确定应该呈现哪个<div>? -
@JaredGoguen 但是,我需要在顶部和底部重复
div,对于switch的每种情况多次重复。或者我只是误会了,你.. -
不,您可以为
let middleDiv = ...创建代码,然后将{middleDiv}包含在您在那里硬编码的两个<div>s 之间的返回JSX 中。
标签: reactjs