|
|
@ -26,17 +26,25 @@ const MessagesList = ({ ...props }) => {
|
|
|
|
setMessageListPreLoading(true);
|
|
|
|
setMessageListPreLoading(true);
|
|
|
|
const data = await fetchMessagesHistory({ ...chatItem, lasttime: chatItem.pretime, pagedir: 'pre', pagesize: BIG_PAGE_SIZE });
|
|
|
|
const data = await fetchMessagesHistory({ ...chatItem, lasttime: chatItem.pretime, pagedir: 'pre', pagesize: BIG_PAGE_SIZE });
|
|
|
|
setMessageListPreLoading(false);
|
|
|
|
setMessageListPreLoading(false);
|
|
|
|
setChatItemMessages((prevValue) => data.concat(prevValue));
|
|
|
|
// const prevChatItemMessages = chatItemMessages;
|
|
|
|
|
|
|
|
// setChatItemMessages([].concat(data, prevChatItemMessages));
|
|
|
|
|
|
|
|
setChatItemMessages((prevValue) => [].concat(data, prevValue));
|
|
|
|
const loadPrePage = !(data.length === 0 || data.length < BIG_PAGE_SIZE);
|
|
|
|
const loadPrePage = !(data.length === 0 || data.length < BIG_PAGE_SIZE);
|
|
|
|
setParamsForMsgList({ loadPrePage });
|
|
|
|
if (data.length > 0) {
|
|
|
|
|
|
|
|
setParamsForMsgList({ loadPrePage, pretime: data[0].orgmsgtime });
|
|
|
|
|
|
|
|
}
|
|
|
|
};
|
|
|
|
};
|
|
|
|
const getMessagesNext = async (chatItem) => {
|
|
|
|
const getMessagesNext = async (chatItem) => {
|
|
|
|
setMessageListLoading(true);
|
|
|
|
setMessageListLoading(true);
|
|
|
|
const data = await fetchMessagesHistory({ ...chatItem, pagedir: 'next', pagesize: BIG_PAGE_SIZE });
|
|
|
|
const data = await fetchMessagesHistory({ ...chatItem, pagedir: 'next', pagesize: BIG_PAGE_SIZE });
|
|
|
|
setMessageListLoading(false);
|
|
|
|
setMessageListLoading(false);
|
|
|
|
setChatItemMessages((prevValue) => prevValue.concat(data));
|
|
|
|
// const prevChatItemMessages = chatItemMessages;
|
|
|
|
|
|
|
|
// setChatItemMessages([].concat(prevChatItemMessages, data));
|
|
|
|
|
|
|
|
setChatItemMessages((prevValue) => [].concat(prevValue, data));
|
|
|
|
const loadNextPage = !(data.length === 0 || data.length < BIG_PAGE_SIZE);
|
|
|
|
const loadNextPage = !(data.length === 0 || data.length < BIG_PAGE_SIZE);
|
|
|
|
setParamsForMsgList({ loadNextPage });
|
|
|
|
if (data.length > 0) {
|
|
|
|
|
|
|
|
setParamsForMsgList({ loadNextPage, lasttime: data[data.length - 1].orgmsgtime });
|
|
|
|
|
|
|
|
}
|
|
|
|
};
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
// 选择指定消息之后, 定位
|
|
|
|
// 选择指定消息之后, 定位
|
|
|
@ -52,6 +60,7 @@ const MessagesList = ({ ...props }) => {
|
|
|
|
setChatItemMessages([]);
|
|
|
|
setChatItemMessages([]);
|
|
|
|
setParamsForMsgList({});
|
|
|
|
setParamsForMsgList({});
|
|
|
|
setSelectedMatch({});
|
|
|
|
setSelectedMatch({});
|
|
|
|
|
|
|
|
setFocusMsg('');
|
|
|
|
if (isEmpty(selectedConversation.conversationid)) {
|
|
|
|
if (isEmpty(selectedConversation.conversationid)) {
|
|
|
|
return () => {};
|
|
|
|
return () => {};
|
|
|
|
}
|
|
|
|
}
|
|
|
@ -94,7 +103,7 @@ const MessagesList = ({ ...props }) => {
|
|
|
|
// 更新是否需要显示上一页,下一页按钮
|
|
|
|
// 更新是否需要显示上一页,下一页按钮
|
|
|
|
useEffect(() => {
|
|
|
|
useEffect(() => {
|
|
|
|
if (chatItemMessages.length > 0) {
|
|
|
|
if (chatItemMessages.length > 0) {
|
|
|
|
setParamsForMsgList({ pretime: chatItemMessages[0].orgmsgtime, lasttime: chatItemMessages[chatItemMessages.length - 1].orgmsgtime });
|
|
|
|
// setParamsForMsgList({ pretime: chatItemMessages[0].orgmsgtime, lasttime: chatItemMessages[chatItemMessages.length - 1].orgmsgtime });
|
|
|
|
const album = chatItemMessages.filter((ele) => ele.whatsapp_msg_type === 'image').map((ele) => ele.data.uri);
|
|
|
|
const album = chatItemMessages.filter((ele) => ele.whatsapp_msg_type === 'image').map((ele) => ele.data.uri);
|
|
|
|
setImageAlbumList(album);
|
|
|
|
setImageAlbumList(album);
|
|
|
|
}
|
|
|
|
}
|
|
|
|