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

vue 中v-for循环出的list下的item 如何操作使被点击的元素显示或隐藏

vue 中v-for循环出的list下的item 如何操作使被点击的元素显示或隐藏

慕姐4208626 2018-12-12 14:13:19
我用v-for循环出来的列表,我点击哪个就让哪个shareAnimate显示出来,我操作shareAnimate会全部显示,我该怎么做只显示那个点击的item<div class="article-list-item" v-for="(item,index) in list" @click="toArticleDetail(item)">        <div class="shareAnimate" v-show="shareAnimate">                    <span>+{{item.point}}</span>        </div></div>
查看完整描述

1 回答

?
慕容森

TA贡献1853条经验 获得超18个赞

思想应该是这样的:

控制子元素的显示与隐藏应该是在子元素的index标识上进行操作,用点击的那个索引与子元素绑定的index进行对比,来判断元素的显示与隐藏


<template>

    <div class="test-wrapper">

        <div class="article-list-item" v-for="(item,index) in list" :key="index"

        @click="toArticleDetail(index)">

            <div class="shareAnimate" v-show="activeIndex===index">

                <span>+{{item.point}}</span>

            </div>

        </div>

    </div>

</template>


<script>

export default {

    name: "test",

    data() {

        return {

            activeIndex: -1 // 初始化点击的索引值

        };

    },

    methods: {

        toArticleDetail(index) {

            this.activeIndex = index;

        }

    }

}

</script>


查看完整回答
1 反对 回复 2019-01-21
  • 1 回答
  • 0 关注
  • 5604 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信