React中的條件渲染

條件渲染

Vue:設(shè)置show-if屬性

React:使用JavaScript操作符來(lái)創(chuàng)建渲染當(dāng)然狀態(tài)的元素,并讓React更新匹配的UI

方法一:if…else…語(yǔ)句

return不同的組件(當(dāng)需要條件渲染組件的一部分,其他部分固定,無(wú)法直接return時(shí),可以利用變量存儲(chǔ)元素,進(jìn)而渲染該變量)

方法二:使用邏輯 && 操作符的內(nèi)聯(lián) if 用法

在 JavaScript 中, true && expression 總是會(huì)評(píng)估為 expression ,而 false && expression 總是執(zhí)行為 false 。
因此,如果條件為 true ,則 && 后面的元素將顯示在輸出中。 如果是 false,React 將會(huì)忽略并跳過(guò)它。

方法三:### 使用條件操作符的內(nèi)聯(lián) If-Else

另一個(gè)用于條件渲染元素的內(nèi)聯(lián)方法是使用 JavaScript 的條件操作符

防止組件渲染

在極少數(shù)情況下,您可能希望組件隱藏自身,即使它是由另一個(gè)組件渲染的。為此,返回 null 而不是其渲染輸出。

在下面的例子中,根據(jù)名為warn的 prop 值,呈現(xiàn) <WarningBanner /> 。如果 prop 值為 false ,則該組件不渲染:

function WarningBanner(props) {
  if (!props.warn) {
    return null;
  }

  return (
    <div className="warning">
      Warning!
    </div>
  );
}

從組件的 render 方法返回 null 不會(huì)影響組件生命周期方法的觸發(fā)。 例如, componentWillUpdate 和 componentDidUpdate 仍將被調(diào)用。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • React 中的條件渲染有以下幾種方式: if 語(yǔ)句 三元操作符(ternary operator) 邏輯 && ...
    JamesSawyer閱讀 12,806評(píng)論 3 6
  • HTML模版 之后出現(xiàn)的React代碼嵌套入模版中。 1. Hello world 這段代碼將一個(gè)一級(jí)標(biāo)題插入到指...
    ryanho84閱讀 6,445評(píng)論 0 9
  • 最近看了一本關(guān)于學(xué)習(xí)方法論的書(shū),強(qiáng)調(diào)了記筆記和堅(jiān)持的重要性。這幾天也剛好在學(xué)習(xí)React,所以我打算每天堅(jiān)持一篇R...
    gaoer1938閱讀 1,812評(píng)論 0 5
  • 本筆記基于React官方文檔,當(dāng)前React版本號(hào)為15.4.0。 1. 安裝 1.1 嘗試 開(kāi)始之前可以先去co...
    Awey閱讀 7,932評(píng)論 14 128
  • 01 小菊是同事公認(rèn)的老好人。同事們有雜事,都會(huì)找她幫忙。她一般都不拒絕。小菊經(jīng)常說(shuō):“多做事,吃些苦,才能有收獲...
    靜心觀情閱讀 499評(píng)論 10 14

友情鏈接更多精彩內(nèi)容