无法在Chrome控制台中呈现{message}对象



我正在使用ReactJS中组件中的道具中的{message}

下方给出了代码

import React from "react";
const MyMessage = ({ message }) => {
if (message?.attachments?.length > 0) {
return (
<img
src={message.attachments[0].file}
alt="message_attachment"
className="message-image"
style={{ float: "right" }}
/>
);
}

const msg = JSON.stringify(message);
console.log("fmsg = "+ msg.sender)
console.log("mes = "+JSON.stringify(message))
console.log("now = "+msg.first_name)
return (
<div
className="message"
style={{
float: "right",
marginRight: "18px",
color: "white",
backgroundColor: "#3B2A50",
}}
>
{message?.text}


</div>
);
};
export default MyMessage;

我试了什么

我使用了以下控制台stmts:

  • console.log(消息(->[Object Object]

  • console.log(JSON.stringfy(消息((;

    {
    "id":455890,
    "sender":{
    "username":"GMmohit",
    "first_name":"Mohit",
    "last_name":"Maroliya",
    "avatar":"https://api-chat-engine-io.s3.amazonaws.com/avatars/potrait_rKDI2hb.png?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAZA5RH3EC2MM47GFP%2F20220213%2Fca-central-1%2Fs3%2Faws4_request&X-Amz-Date=20220213T141431Z&X-Amz-Expires=3600&X-Amz-SignedHeaders=host&X-Amz-Signature=1d5e0ec2418701210532824ba90af5f6366d17b7fa1f9dfadb6783cd8efdbfd6",
    "custom_json":"{}",
    "is_online":true
    },
    "created":"2022-02-12 12:23:04.745937+00:00",
    "attachments":[],
    "sender_username":"undefined",
    "text":"----",
    "custom_json":"{}"
    }
    
  • const msg=JSON.stringfy(消息(console.log("now="+消息.first_name(-> but it gives undefined

如何访问{message}中的值,如usernamefirst_name等?但是,我可以访问message?.text

您的用户名和名字似乎来自消息中的sender对象。您需要考虑以下发件人:message.sender.username以访问邮件中sender对象中的用户名。

如果您正在字符串化json,您将无法从中获取数据,因为它将作为一个完整的字符串而不是一个对象。

最新更新