标签页放在main中
标签页el-tabs主要属性:
(1)editableTabsValue:高亮表示被选中的标签页(通过name标识)
(2)editableTabs:标签页数组(存储所有的标签页信息),属性:name、title
<!-- 标签页-->
<el-tabs v-model="editableTabsValue" type="card" closable @tab-remove="removeTab" @tab-click="selectTab">
<el-tab-pane
v-for="(item, index) in editableTabs"
:key="item.name"
:label="item.title"
:name="item.name"
>
</el-tab-pane>
</el-tabs>
editableTabsValue、editableTabs存放在store中
1、点击菜单项生成新的标签页
点击菜单项生成新的标签页,添加新的标签页前要判断标签页数组中是否已经包含该标签页,如果已经拥有该标签页,只需要选中该标签页。
示例:
通过点击事件addTabs将菜单项的title和name添加到标签页数组中
<el-menu-item index="/index" @click="addTabs({title:'首页',name:'/index'})">
<i class="el-icon-s-home"></i>
<span slot="title">首页</span>
</el-menu-item>
<el-menu-item :index="item.name" :route="{path:item.path}" v-for="item in menu.children" @click="addTabs(item)">
<template slot="title">
<i