fix: 前端页面架构重构初版

This commit is contained in:
Gsh
2025-12-28 22:42:17 +08:00
parent c649ad31c2
commit e4621d9049
53 changed files with 6098 additions and 845 deletions

View File

@@ -10,9 +10,9 @@ const {
pageAnimateType: rePageAnimateType,
layout: reLayout,
collapseType: reCollapseType,
isCollapse: reisCollapse,
isSafeAreaHover: reisSafeAreaHover,
hasActivatedHover: rehasActivatedHover,
isCollapse: reIsCollapse,
isCollapseConversationList: reIsCollapseConversationList,
} = designSetting;
export const useDesignStore = defineStore(
@@ -44,41 +44,22 @@ export const useDesignStore = defineStore(
};
// 最终是否展开左侧菜单
const isCollapse = ref<boolean>(reisCollapse);
const isCollapse = ref<boolean>(reIsCollapse);
const setCollapse = (collapseFinal: boolean) => {
console.log('c---', collapseFinal);
isCollapse.value = collapseFinal;
};
// 折叠按钮是否被悬停
const isSafeAreaHover = ref<boolean>(reisSafeAreaHover);
const setSafeAreaHover = (hover: boolean) => {
isSafeAreaHover.value = hover;
const toggleCollapse = () => {
isCollapse.value = !isCollapse.value;
};
// 新- 对话列表折叠
const isCollapseConversationList = ref<boolean>(reIsCollapseConversationList);
const setIsCollapseConversationList = (collapseFinal: boolean) => {
isCollapseConversationList.value = collapseFinal;
};
const toggleCollapseConversationList = () => {
isCollapseConversationList.value = !isCollapseConversationList.value;
};
// 跟踪是否首次激活悬停
const hasActivatedHover = ref<boolean>(rehasActivatedHover);
// 两个监听不要合并
watch(
() => isCollapse.value,
(newValue) => {
if (newValue) {
hasActivatedHover.value = false;
}
},
{ deep: true },
);
watch(
() => isSafeAreaHover.value,
() => {
hasActivatedHover.value = true;
},
{ deep: true },
);
return {
darkMode,
setDarkMode,
@@ -92,10 +73,11 @@ export const useDesignStore = defineStore(
setCollapseType,
isCollapse,
setCollapse,
isSafeAreaHover,
setSafeAreaHover,
hasActivatedHover,
_setLayout,
toggleCollapse,
isCollapseConversationList,
setIsCollapseConversationList,
toggleCollapseConversationList,
};
},
{

View File

@@ -36,7 +36,7 @@ export const useSessionStore = defineStore('session', () => {
try {
// 清空当前选中会话信息
setCurrentSession(null);
router.replace({ name: 'chat' });
router.replace({ name: 'chatConversationWithId' });
}
catch (error) {
console.error('createSessionBtn错误:', error);
@@ -109,7 +109,7 @@ export const useSessionStore = defineStore('session', () => {
const createSessionList = async (data: Omit<CreateSessionDTO, 'id'>) => {
if (!userStore.token) {
router.replace({
name: 'chatWithId',
name: 'chatConversationWithId',
params: {
id: 'not_login',
},
@@ -140,7 +140,7 @@ export const useSessionStore = defineStore('session', () => {
setCurrentSession(newSessionRes.data);
// 跳转聊天页
router.replace({
name: 'chatWithId',
name: 'chatConversationWithId',
params: { id: `${res.data.id}` },
});
}

View File

@@ -30,7 +30,7 @@ export const useUserStore = defineStore(
// 如果需要调用接口,可以在这里调用
clearToken();
clearUserInfo();
router.replace({ name: 'chat' });
router.replace({ name: 'chatConversationWithId' });
};
// 新增:登录弹框状态