MsgPage.js 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. import React, {useState, useEffect} from "react";
  2. import { connect } from "react-redux";
  3. export const OneChat = ({chats, _id, getData}) => {
  4. const [chatList, setChatList] = useState(chats || []);
  5. const [messageList, setMessageList] = useState([]);
  6. useEffect(() => {
  7. async function getDataFunc() {
  8. const res = await getData(_id);
  9. setChatList(res.chats);
  10. setMessageList(res.chats?.message);
  11. }
  12. getDataFunc();
  13. }, [_id]);
  14. function handleClick(_id) {
  15. const filteredChatList = chatList.filter((item) => item._id === _id);
  16. setMessageList(filteredChatList[0].messages);
  17. }
  18. {console.log(messageList, "messageListmessageListmessageList")}
  19. return (
  20. <main className="chatMain">
  21. {messageList && messageList.length > 0 && (
  22. <ul className="chatMain">
  23. {console.log(messageList, "messageListmessageListmessageList")}
  24. {messageList.map((item1, index) => (
  25. <li className="msgLi" key={index}>
  26. <h3>{item1.text}</h3>
  27. </li>
  28. ))}
  29. </ul>
  30. )}
  31. </main>
  32. );
  33. };
  34. export const COneChat = connect(
  35. (state) => ({
  36. chats: state.promise.myProfile?.chats,
  37. // _id: state.auth?.payload?.sub.id,
  38. }),
  39. )(OneChat);