From 49fcdb7178dffc69769e2fb8cb6a03e204cb1e68 Mon Sep 17 00:00:00 2001 From: WXL <1785969728@qq.com> Date: 星期五, 31 五月 2024 18:26:42 +0800 Subject: [PATCH] 测试完成 --- src/components/Breadcrumb/index.vue | 55 ++++++++++++++++++++++++++++++++----------------------- 1 files changed, 32 insertions(+), 23 deletions(-) diff --git a/src/components/Breadcrumb/index.vue b/src/components/Breadcrumb/index.vue index 1696f54..8e6be4c 100644 --- a/src/components/Breadcrumb/index.vue +++ b/src/components/Breadcrumb/index.vue @@ -1,8 +1,13 @@ +<!-- 椤堕儴璺緞 --> <template> <el-breadcrumb class="app-breadcrumb" separator="/"> <transition-group name="breadcrumb"> - <el-breadcrumb-item v-for="(item,index) in levelList" :key="item.path"> - <span v-if="item.redirect === 'noRedirect' || index == levelList.length - 1" class="no-redirect">{{ item.meta.title }}</span> + <el-breadcrumb-item v-for="(item, index) in levelList" :key="item.path"> + <span + v-if="item.redirect === 'noRedirect' || index == levelList.length - 1" + class="no-redirect" + >{{ item.meta.title }}</span + > <a v-else @click.prevent="handleLink(item)">{{ item.meta.title }}</a> </el-breadcrumb-item> </transition-group> @@ -13,50 +18,54 @@ export default { data() { return { - levelList: null - } + levelList: null, + }; }, watch: { $route(route) { // if you go to the redirect page, do not update the breadcrumbs - if (route.path.startsWith('/redirect/')) { - return + if (route.path.startsWith("/redirect/")) { + return; } - this.getBreadcrumb() - } + this.getBreadcrumb(); + }, }, created() { - this.getBreadcrumb() + this.getBreadcrumb(); }, methods: { getBreadcrumb() { // only show routes with meta.title - let matched = this.$route.matched.filter(item => item.meta && item.meta.title) - const first = matched[0] + let matched = this.$route.matched.filter( + (item) => item.meta && item.meta.title + ); + const first = matched[0]; if (!this.isDashboard(first)) { - matched = [{ path: '/index', meta: { title: '棣栭〉' }}].concat(matched) + matched = [{ path: "/index", meta: { title: "棣栭〉" } }].concat(matched); } - this.levelList = matched.filter(item => item.meta && item.meta.title && item.meta.breadcrumb !== false) + this.levelList = matched.filter( + (item) => item.meta && item.meta.title && item.meta.breadcrumb !== false + ); }, isDashboard(route) { - const name = route && route.name + const name = route && route.name; if (!name) { - return false + return false; } - return name.trim() === 'Index' + return name.trim() === "Index"; }, handleLink(item) { - const { redirect, path } = item + const { redirect, path } = item; if (redirect) { - this.$router.push(redirect) - return + this.$router.push(redirect); + return; } - this.$router.push(path) - } - } -} + this.$router.push(path); + }, + }, +}; </script> <style lang="scss" scoped> -- Gitblit v1.9.3