是否可以在 React 渲染函數中使用 if...else... 語句?
P粉760675452
2023-08-23 18:27:14
<p>基本上,我有一個react元件,它的<code>render()</code>函數體如下:(這是我理想中的一個,這意味著它目前不起作用)< /p>
<pre class="brush:js;toolbar:false;">render(){
return (
<div>
<Element1/>
<Element2/>
// note: logic only, code does not work here
if (this.props.hasImage) <ElementWithImage/>
else <ElementWithoutImage/>
</div>
)
}
</pre>
<p><br /></p>
其實有一種方法可以完全滿足OP的要求。只需渲染並呼叫匿名函數,如下所示:
不完全一樣,但有解決方法。 React 文件中有一個關於條件渲染的部分,您應該看一下。以下是使用內聯 if-else 可以執行的操作的範例。
您也可以在渲染函數內處理它,但在傳回 jsx 之前。
也值得一提的是 ZekeDroid 在評論中提出的內容。如果您只是檢查條件並且不想呈現不符合條件的特定程式碼段,則可以使用
&& 運算子
。