【问题标题】:Displaying JSX/HTML based on props基于 props 显示 JSX/HTML
【发布时间】:2021-12-24 00:40:29
【问题描述】:

这种表达方式叫什么,应该如何或何时使用?

{props.type === "big" && <h2>{props.title}</h2>}

【问题讨论】:

    标签: javascript html reactjs jsx


    【解决方案1】:

    {} 部分是一个JSX 表达式,它允许您在 JSX 标记中嵌入 JavaScript 代码。

    &amp;&amp; 是一个逻辑 AND 运算符,但在 JavaScript 中,truefalse 不会导致结果,&amp;&amp; 这样做:

    1. 计算其左侧操作数
    2. 如果第 1 步的值是 falsy&amp;&amp; 操作会将该结果作为结果并在此处停止
    3. 如果第 1 步的值是 truthy(与 falsy 相反)&amp;&amp; 运算会计算右侧操作数并将该值作为结果

    所以props.type === "big" &amp;&amp; &lt;h2&gt;{props.title}&lt;/h2&gt; 的意思是:

    • 如果props.type"big",请将&lt;h2&gt;{props.title}&lt;/h2&gt; 放在这里。
    • 如果没有,请不要在此处添加任何内容(因为 React 不会呈现 falsenullundefined

    应该如何或何时使用它

    当您需要有条件地渲染某些东西时,通常会使用它。条件是第一部分 (props.type === "big")。被渲染或未被渲染的东西是第二部分(&lt;h2&gt;{props.title}&lt;/h2&gt;)。

    【讨论】:

    • 非常感谢,这真的很有帮助,还为我提供了一个有条件地渲染 jsx 的新技巧,非常感谢!
    猜你喜欢
    • 2018-11-29
    • 1970-01-01
    • 2019-08-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-04-03
    • 2018-07-26
    • 2021-09-05
    相关资源
    最近更新 更多