Vue选项卡案例

发布时间:2019-05-29 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了Vue选项卡案例脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。

选项卡

运行效果

图片描述

原理分析和实现

1、动态切换class
2、v-show,根据表达式之真假值,切换元素的 display CSS 属性。

下面直接进入正题

完整代码

css部分

*{
    margin: 0;
    padding: 0;
}
#box{
    width: 600px;
    margin: 0 auto;
}
.tab-tit{
    font-size: 0;
    width: 600px;
}
.tab-tit a{
    display: inline-block;
    height: 50px;
    line-height: 50px;
    width: 25%;
    font-size: 18px;
    text-align: center;
    background: #ccc;
    color: #333;
    text-decoration:none;
}
.tab-tit .cur{
    background: #09f;
    color: #fff;
}
.tab-con div{
    border: 1px solid #ccc;
    height: 400px;
    width: 598px;
    margin: 0 auto;
    padding-top: 20px;
}

HTML部分(视图)

<div id="box">
         <!--点击设置msg的值  如果msg等于0,第一个a添加cur类名,如果msg等于1,第二个a添加cur类名,以此类推。
            添加了cur类名,a就会改变样式 @click,:class ,v-show这三个是vue常用的指令或添加事件的方式-->
        <div class="tab-tit">
            <a href="javascript:;" @click="msg=0" :class="{'cur':msg===0}">html</a>
            <a href="javascript:;" @click="msg=1" :class="{'cur':msg===1}">css</a>
            <a href="javascript:;" @click="msg=2" :class="{'cur':msg===2}">javascript</a>
            <a href="javascript:;" @click="msg=3" :class="{'cur':msg===3}">vue</a>
        </div>
            <!--根据msg的值显示div,如果msg等于0,第一个div显示,其它三个div不显示。
                如果msg等于1,第二个div显示,其它三个div不显示。以此类推-->
        <div class="tab-con">
            <div v-show="msg===0">
                html
            </div>
            <div v-show="msg===1">
                css
            </div>
            <div v-show="msg===2">
                javascript
            </div>
            <div v-show="msg===3">
                vue
            </div>
        </div>
    </div>

JavaScript部分(模型)

 <script>
    new Vue({
        el: '#box',
        data: {
            msg: 0
        }
    })
</script>

喜欢的可以点赞加收藏

脚本宝典总结

以上是脚本宝典为你收集整理的Vue选项卡案例全部内容,希望文章能够帮你解决Vue选项卡案例所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签:CSSHTMLVue