为了账号安全,请及时绑定邮箱和手机立即绑定

vue2.0怎么实现点击头部显示当前盒子

vue2.0怎么实现点击头部显示当前盒子

HUH函数 2018-10-11 15:10:41
如图,想实现点击分类、工艺显示下面的li,在jq可以使用$this,在vue2.0中该怎么实现?
查看完整描述

1 回答

?
慕少森

TA贡献2019条经验 获得超9个赞

可以直接在分类按钮上面绑定个点击事件然后给列表弄上v-if

HTML:

 <div v-on:click="show=!show">分类</div>
    <ul v-if="show">
        <li>1</li>
        <li>2</li>
        <li>3</li>
    </ul>

当然,show这个变量也不要忘了在dada中定义。

v-if的介绍可以看这里


回答下面的评论:

大概的思路是用两个v-for把你的大分类和分类下的列表渲染出来(还有在每个大分类下定义show变量),然后在点击事件中传入对应的i,用于改变对应的show。也可以参考楼下的,为了提高性能,可以把v-if换成v-show

HTML:

<div v-for="(menu,i) in menus" @click="change(i)">{{menu.title}}
    <ul v-if="menu.show">
        <li v-for="list in menu.lists">{{list}}</li>
    </ul>
</div>

script:

...    data: {                menus: [{
                            title: "分类",
                            show:false,
                            lists: [1, 3, 4]
                        }, {                            title: "工艺",
                            show:false,
                            lists: [1, 3, 4]
                        }]
                    },                    methods: {                        change: function(i) {
                            this.menus[i].show=!this.menus[i].show
                        }
                    }


查看完整回答
反对 回复 2018-11-15
  • 1 回答
  • 0 关注
  • 738 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号