vue 动态加载tab选项卡组件

2018-10-11  本文已影响0人  Mr无愧于心

<div id="ap">
    vue 动态加载tab选项卡组件
    <div class="sel">
        <!--<button class="c1" @click="fn(1)" :class="{current:flag==1}">选项1</button>
        <button class="c2" @click="fn(2)" :class="{current:flag==2}">选项2</button>
        <button class="c3" @click="fn(3)" :class="{current:flag==3}">选项3</button>-->
        <button v-for="(item,index) in arr" @click="fn(index)" :class="{current:flag==index}">{{item.title}}</button>
    </div>
    <keep-alive>
        <component :is="name"></component>
    </keep-alive>
</div>
<template id="div1"><div class="sel1">aaa</div></template>
<template id="div2"><div class="sel2">bbb</div></template>
<template id="div3"><div class="sel3">ccc</div></template>
let myC1={
        data(){
            return {};
        },
        methods:{

        },
        template:'#div1',
    };
    let myC2={
        data(){
            return {};
        },
        template:'#div2',
    };
    let myC3={
        data(){
            return {};
        },
        template:'#div3',
    };
    let ap=new Vue({
        el:'#ap',
        data:{
            name:'myC1',
            flag:0,
            arr:[{title:"选项1"},{title:"选项2"},{title:"选项3"},]
        },
        methods:{
            fn(data){
                this.flag=data;
                //this.name='myC'+data;
                this.name='myC'+(data+1);
            }
        },
        components:{
            myC1,myC2,myC3
        }
    })
上一篇 下一篇

猜你喜欢

热点阅读