vue基础:面包屑和标签tag

面包屑导航(breadcrumb)

面包屑导航显示当前页面的路径,同时支持跳回之前任意页面

breadcrumb的使用:

  1. 按需引入的需要引入两个模块:BreadcrumbBreadcrumbItem,在main.js
// main.js
import {Breadcrumb, BreadcrumbItem} from 'element-ui';
// 面包屑导航,注入到全局
Vue.use(Breadcrumb)
Vue.use(BreadcrumbItem)
  1. 在页面中使用

    breadcrumb非常简单,直接定义即刻,跳转的功能通过为BreadcrumbItem组件添加to属性即可。如下例子:

  <template>
      <el-breadcrumb>
          <!-- 跳转传入的为一个对象,需要一个path属性指明跳转的地址。{path:路由地址} -->
          <el-breadcrumb-item v-for="item in tabList" :key="item.name" :to="{path:item.path}">{{item.label}}</el-breadcrumb-item>
      </el-breadcrumb>
  </template>
  <script>
  export default {
      name:'ComHeader',
      data:function(){
          return {
              tabList:[
                  {
                      name:'index',
                      // 这里的路径必须是vue-router里定义的路由
                      path:'/',
                      label:'首页'
                  },{
                      name:'user',
                      // 这里的路径必须是vue-router里定义的路由
                      path:'/user',
                      label:'用户管理'
                  },{
                      name:'mall',
                      // 这里的路径必须是vue-router里定义的路由
                      path:'/mall',
                      label:'商品管理'
                  }
              ]
          }
      }
  </script>

请添加图片描述

两个组件模板的属性说明:

breadcrumb

参数说明默认值
separator分隔符号,默认斜杠: /‘/’
separator-class分割符号的样式类名,可以为分隔符添加定制样式

breadcrumb-item

参数说明类型
to要跳转的地址,字符串或对象的形式。对象使用{path:路由地址}string\object
replace在使用 to 进行路由跳转时,启用 replace 将不会向 history 添加新记录boolean(默认false)

标签(tag)

用于标记和选择

  1. main.js中引用tag
  // main.js
  import {Tag} from 'element-ui'
  // 全局注入vue中
  Vue.use(Tag)
  1. 在页面或组件中使用tag
<template>
<div class="tag-group">
    <el-tag 
    v-for="(item,index) in tags"
    :key="item.name"
    :closable="true"
    @click="handleMenu(item)"
    @close="handleClose(item,index)"
    size="small"
    :effect="item.name === $router.name ? 'light' : 'dark'"
    >{{item.label}}</el-tag>
</div>
</template>

<script>
export default {
    data(){
        return {
            tags:[
                {
                    name:'index',
                    path:'/',
                    label:'首页'
                },{
                    name:'user',
                    path:'/user',
                    label:'用户管理'
                },{
                    name:'mall',
                    path:'/mall',
                    label:'商品管理'
                }
            ]
        }
    },
    methods:{
        handleMenu:function(tag){
            console.dir(tag)
        },
        // tag的关闭是通过手动删除数据实现的
        handleClose(tag,index){
            console.dir(tag)
            this.tags.splice(index,1)
        },
    },
}
</script>

请添加图片描述

  1. Tag的属性
属性属性值说明
typesuccess/info/warning/danger设置tag的几种背景颜色
closableboolean默认falsetag是否可关闭,默认不可关闭
disable-transitionsboolean默认false是否禁用渐变东西和,默认不禁止
hitboolean默认false是否有边框描边
sizemedium / small / mini定义tag大小
effectdark / light / plain默认light主题
  1. Tag的事件有两个,点击和关闭
事件名称说明回调参数
click点击 Tag 时触发的事件传入函数名,可加参数;
close点击Tag的关闭按钮时触发的事件传入函数名,可加参数。例如@close=“func(‘close’)”
  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

jayLog

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值