From 7967654988651f881a474157ea500f38f3e80c46 Mon Sep 17 00:00:00 2001 From: Vadim Date: Fri, 9 Oct 2026 10:59:40 +0300 Subject: [PATCH] breadcrumb --- src/composables/useBreadcrumbs.ts | 15 +++++++++------ src/layouts/DefaultLayout.vue | 2 +- 2 files changed, 10 insertions(+), 7 deletions(-) diff --git a/src/composables/useBreadcrumbs.ts b/src/composables/useBreadcrumbs.ts index 90a5304..03456f2 100644 --- a/src/composables/useBreadcrumbs.ts +++ b/src/composables/useBreadcrumbs.ts @@ -16,19 +16,22 @@ export function useBreadcrumbs() { const router = useRouter() const breadcrumbs = computed(() => { - const matched = route.matched.filter((record) => record.meta.breadcrumb) + const matched = route.matched.filter((record) => { + return record.meta.breadcrumb + }) - return matched.map((record, index) => { + const paths = matched.map((record, index): Breadcrumb => { const { breadcrumb } = record.meta const title = typeof breadcrumb === 'function' ? breadcrumb(route) : (breadcrumb as string) const isLast = index === matched.length - 1 - const to = - !isLast && record.name - ? router.resolve({ name: record.name, params: route.params }).path - : undefined + const to = !isLast && record.name ? router.resolve({ name: record.name, params: route.params }).path : undefined return { title, to, disabled: isLast } }) + + const value: Breadcrumb[] = [] + value.push({ title: 'Home', to: '/', disabled: paths.length === 0 }) + return value.concat(paths) }) return { breadcrumbs } diff --git a/src/layouts/DefaultLayout.vue b/src/layouts/DefaultLayout.vue index fbb7043..268e821 100644 --- a/src/layouts/DefaultLayout.vue +++ b/src/layouts/DefaultLayout.vue @@ -109,7 +109,7 @@ const fluid = computed(() => {
- +