whychdw
2020-08-29 02d848bf39005e83882a87f8bc322d8499b92fbc
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
<template>
    <el-menu
    :default-active="acTabs">
        <template v-for="menu in menus">
            <el-submenu 
            v-if="menu.childrens" 
            :key="menu.name" :index="menu.name">
                <template slot="title">
                    <i v-if="menu.icon" :class="menu.icon"></i>
                    <span>{{menu.label}}</span>
                </template>
                <el-menu-item v-for="child in menu.childrens" 
                :key="child.name" :index="child.name"
                @click="select(child)">
                    {{child.label}}
                </el-menu-item>
            </el-submenu>
            <el-menu-item v-else :index="menu.name" :key="menu.name"
            @click="select(menu)">
                <i class="el-icon-s-home"></i>
                <span slot="title">{{menu.label}}</span>
            </el-menu-item>
        </template>
    </el-menu>
</template>
 
<script>
export default {
    props: {
        acTabs: {
            type: String,
            default: '',
        }
    },
    data() {
        return {
            menus: [
                {
                    label: '首页',
                    name: 'index',
                    src: '#/index',
                    icon: 'el-icon-s-home',
                    closable: false,
                },
                {
                    label: '测试数据',
                    name: 'testData',
                    src: '',
                    icon: 'el-icon-s-data',
                    closable: false,
                    childrens: [
                        {
                            label: '实时监测',
                            name: 'realTime',
                            src: '#/real-time',
                            closable: true, 
                        },
                        {
                           label: '历史数据',
                            name: 'history',
                            src: '#/history',
                            closable: true, 
                        },
                    ]
                }
            ],
        }
    },
    methods: {
        select(data) {
            if(data.name !== this.acTabs) {
                this.$emit('select', data);
            }else {
                console.log('菜单已激活');
            }
            
        }
    }
}
</script>
 
<style scoped>
 
</style>