From 190f2df15e7288684a64a1e8be892856e8bb06cc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=B6=85=E7=BA=A7=E8=80=81=E7=99=BD=E5=85=94?= Date: Fri, 29 Aug 2025 10:41:19 +0800 Subject: [PATCH] =?UTF-8?q?feat(store):=20=E6=B7=BB=E5=8A=A0asyncKfSelecte?= =?UTF-8?q?d=E6=96=B9=E6=B3=95=E7=94=A8=E4=BA=8E=E6=9B=B4=E6=96=B0?= =?UTF-8?q?=E9=80=89=E4=B8=AD=E5=AE=A2=E6=9C=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 添加asyncKfSelected方法到ckchat store,用于异步更新选中的客服ID。同时移除未使用的代码和console.log --- Cunkebao/src/pages/pc/ckbox/index.tsx | 11 +++-------- Cunkebao/src/store/module/ckchat.data.ts | 1 + Cunkebao/src/store/module/ckchat.ts | 7 +++++++ 3 files changed, 11 insertions(+), 8 deletions(-) diff --git a/Cunkebao/src/pages/pc/ckbox/index.tsx b/Cunkebao/src/pages/pc/ckbox/index.tsx index 7869f537..f8ed2abf 100644 --- a/Cunkebao/src/pages/pc/ckbox/index.tsx +++ b/Cunkebao/src/pages/pc/ckbox/index.tsx @@ -33,9 +33,7 @@ const CkboxPage: React.FC = () => { kfUserList: KfUserListData[]; newContractList: { groupName: string; contacts: any[] }[]; }; - const { contractList, groupList, kfUserList, newContractList } = data; - - console.log(contractList, groupList, kfUserList, newContractList); + const { contractList } = data; //找出已经在聊天的 const isChatList = contractList.filter( @@ -82,7 +80,7 @@ const CkboxPage: React.FC = () => { // 处理垂直侧边栏用户选择 const handleVerticalUserSelect = (userId: string) => { - setActiveVerticalUserId(userId); + // setActiveVerticalUserId(userId); // 这里可以根据选择的用户类别筛选不同的联系人列表 // 例如:根据userId加载不同分类的联系人 }; @@ -96,10 +94,7 @@ const CkboxPage: React.FC = () => { {/* 垂直侧边栏 */} - + {/* 左侧联系人边栏 */} diff --git a/Cunkebao/src/store/module/ckchat.data.ts b/Cunkebao/src/store/module/ckchat.data.ts index 4e756513..9f166da1 100644 --- a/Cunkebao/src/store/module/ckchat.data.ts +++ b/Cunkebao/src/store/module/ckchat.data.ts @@ -74,6 +74,7 @@ export interface CkChatState { kfUserList: KfUserListData[]; kfSelected: number; newContractList: { groupName: string; contacts: any[] }[]; + asyncKfSelected: (data: number) => void; getkfUserList: () => KfUserListData[]; asyncKfUserList: (data: KfUserListData[]) => void; asyncContractList: (data: ContractData[]) => void; diff --git a/Cunkebao/src/store/module/ckchat.ts b/Cunkebao/src/store/module/ckchat.ts index 379771a7..9786e803 100644 --- a/Cunkebao/src/store/module/ckchat.ts +++ b/Cunkebao/src/store/module/ckchat.ts @@ -8,6 +8,7 @@ import { KfUserListData, } from "./ckchat.data"; import { ContractData, GroupData } from "@/pages/pc/ckbox/data"; + export const useCkChatStore = createPersistStore( set => ({ userInfo: null, @@ -15,7 +16,11 @@ export const useCkChatStore = createPersistStore( contractList: [], //联系人列表 chatSessions: [], //聊天会话 kfUserList: [], //客服列表 + kfSelected: 0, newContractList: [], //联系人分组 + asyncKfSelected: (data: number) => { + set({ kfSelected: data }); + }, // 异步设置会话列表 asyncNewContractList: data => { set({ newContractList: data }); @@ -194,3 +199,5 @@ export const asyncChatSessions = (data: ContractData[]) => export const asyncNewContractList = ( data: { groupName: string; contacts: any[] }[], ) => useCkChatStore.getState().asyncNewContractList(data); +export const asyncKfSelected = (data: number) => + useCkChatStore.getState().asyncKfSelected(data);