三元运算符 `'messege' in order` 返回 true,但在反应中仍然没有显示任何内容[重复]

问题描述 投票:0回答:1

我正在尝试打印

order.messege
(如果它存在于
order
对象中)
这是
console.logs

          <div>
                { typeof(orderData) !== 'undefined' && orderData !== null ?
                    <div>
                        {orderData.reverse().map( (order, index) => {
                            console.log('messege' in order)
                            console.log(order)
                            { 'messege' in order ?
                                <div>
                                    <h1>{order.messege}</h1>
                                </div>
                               :
                               <div>
                                    <h1>roll back</h1>
                               </div>

                            }
                            } 
                        )}
                    </div>
                    :
                    <h1>no orders</h1>
                }
         </div>
javascript reactjs object javascript-objects conditional-operator
1个回答
1
投票

传递给

map
的回调应该返回一些您想要为每个元素渲染的 JSX。您没有返回任何内容,因此其计算结果为
undefined
。以下是相关
div
的完整 JSX:

    <div>
      {Array.isArray(orderData) && orderData.length ? (
        <div>
          {orderData.reverse().map((order, index) => {
            console.log("messege" in order);
            console.log(order);

            return (
              <div key={index}>
                <h1>{"messege" in order ? order.messege : "roll back"}</h1>
              </div>
            );
          })}
        </div>
      ) : (
        <h1>no orders</h1>
      )}
    </div>
© www.soinside.com 2019 - 2024. All rights reserved.