fix: 统一AI详情页面包屑与Tab导航表现
- 为工作流、插件、知识库、聊天助手详情路由恢复面包屑与Tab参与并保持父模块高亮 - 列表卡片跳转统一追加 navTitle 与 pageKey,详情页Tab标题与面包屑优先显示卡片名称 - 工作流设计页、知识库详情页、聊天助手设置页在深链缺少 navTitle 时自动 replace 补写
This commit is contained in:
@@ -26,8 +26,34 @@ const props = withDefaults(defineProps<Props>(), {
|
||||
const route = useRoute();
|
||||
const router = useRouter();
|
||||
|
||||
function resolveNavTitle(navTitleQuery: unknown): string {
|
||||
const rawValue = Array.isArray(navTitleQuery)
|
||||
? navTitleQuery[0]
|
||||
: navTitleQuery;
|
||||
if (typeof rawValue !== 'string' || !rawValue.trim()) {
|
||||
return '';
|
||||
}
|
||||
try {
|
||||
return decodeURIComponent(rawValue);
|
||||
} catch {
|
||||
return rawValue;
|
||||
}
|
||||
}
|
||||
|
||||
const breadcrumbs = computed((): IBreadcrumb[] => {
|
||||
const matched = route.matched;
|
||||
const navTitle = resolveNavTitle(route.query.navTitle);
|
||||
|
||||
if (navTitle) {
|
||||
const currentRoute = matched[matched.length - 1];
|
||||
return [
|
||||
{
|
||||
icon: currentRoute?.meta?.icon,
|
||||
path: currentRoute?.path || route.path,
|
||||
title: navTitle,
|
||||
},
|
||||
];
|
||||
}
|
||||
|
||||
const resultBreadcrumb: IBreadcrumb[] = [];
|
||||
|
||||
|
||||
Reference in New Issue
Block a user