feat(wip): 收發消息
This commit is contained in:
@@ -37,7 +37,26 @@ export default function ChatFragment({ target, ...props }: Args) {
|
|||||||
setChatInfo(re.data as Chat)
|
setChatInfo(re.data as Chat)
|
||||||
}, [target])
|
}, [target])
|
||||||
|
|
||||||
console.log(tabItemSelected)
|
let page = 0
|
||||||
|
async function loadMore() {
|
||||||
|
const re = await Client.invoke("Chat.getMessageHistory", {
|
||||||
|
token: data.access_token,
|
||||||
|
target,
|
||||||
|
page,
|
||||||
|
})
|
||||||
|
|
||||||
|
if (checkApiSuccessOrSncakbar(re, "拉取歷史記錄失敗")) return
|
||||||
|
page++
|
||||||
|
setMessagesList(messagesList.concat())
|
||||||
|
}
|
||||||
|
|
||||||
|
React.useEffect(() => {
|
||||||
|
|
||||||
|
return () => {
|
||||||
|
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<div style={{
|
<div style={{
|
||||||
width: '100%',
|
width: '100%',
|
||||||
|
|||||||
@@ -1,5 +1,6 @@
|
|||||||
import Chat from "../data/Chat.ts";
|
import Chat from "../data/Chat.ts";
|
||||||
import ChatPrivate from "../data/ChatPrivate.ts";
|
import ChatPrivate from "../data/ChatPrivate.ts";
|
||||||
|
import MessagesManager from "../data/MessagesManager.ts";
|
||||||
import User from "../data/User.ts"
|
import User from "../data/User.ts"
|
||||||
import BaseApi from "./BaseApi.ts"
|
import BaseApi from "./BaseApi.ts"
|
||||||
import TokenManager from "./TokenManager.ts"
|
import TokenManager from "./TokenManager.ts"
|
||||||
@@ -82,7 +83,7 @@ export default class ChatApi extends BaseApi {
|
|||||||
* @param page 頁面
|
* @param page 頁面
|
||||||
*/
|
*/
|
||||||
this.registerEvent("Chat.getMessageHistory", (args) => {
|
this.registerEvent("Chat.getMessageHistory", (args) => {
|
||||||
if (this.checkArgsMissing(args, ['token', 'target'])) return {
|
if (this.checkArgsMissing(args, ['token', 'target', 'page'])) return {
|
||||||
msg: "參數缺失",
|
msg: "參數缺失",
|
||||||
code: 400,
|
code: 400,
|
||||||
}
|
}
|
||||||
@@ -93,9 +94,18 @@ export default class ChatApi extends BaseApi {
|
|||||||
msg: "令牌無效",
|
msg: "令牌無效",
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const chat = Chat.findById(args.target as string)
|
||||||
|
if (chat == null) return {
|
||||||
|
code: 404,
|
||||||
|
msg: "對話不存在",
|
||||||
|
}
|
||||||
|
|
||||||
return {
|
return {
|
||||||
code: 501,
|
code: 200,
|
||||||
msg: "未實現",
|
msg: "成功",
|
||||||
|
data: {
|
||||||
|
messages: MessagesManager.getInstanceForChat(chat).getMessagesWithPage(),
|
||||||
|
},
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user