vue能做特效吗,vue项目网站

首页 > 经验 > 作者:YD1662022-11-03 22:11:24

需求:

1、每个按钮都能点击展开和收起功能

2、所有按钮下的内容只展示一个,(A内容展示时,点击B按钮,B内容展示,A内容收起)

<style> button{ margin-bottom: 30px } </style> <div id="app"> <ul> <li v-for="(list,index) in lists" :key="index"> {{list.id}} <button @click="isShow(list.id)" > {{idx==list.id?'收起':'展开'}}</button> <div v-show="idx==list.id">{{list.name}}</div> </li> </ul> </div> <script src="http://cdn.staticfile.org/vue/2.6.11/vue.js"></script>

vue能做特效吗,vue项目网站(1)

<script> new Vue({ el: '#app', data() { return { lists:[ {id:1,name:"aa"}, {id:2,name:"bb"}, {id:3,name:"cc"} ], idx:-1, } }, methods: { isShow(id) { // 如果用户点击的时候,当前判断展开的标识idx,是-1,的时候,那说明,用户要展开,那么就把id赋给idx ,标识,这样用户就展开了 if (this.idx == -1) { this.idx = id; } else if (this.idx == id) {//如果用户点击的id 和上次点击的id一样的时候,那就说明,用户点击的是上一次点击展开变成收起的按钮那行 this.idx = -1; } else {//如果用户点击的id和标识idx不相等,那么说明用户点击了其他想要展开的行 this.idx = id; } // 简化 // if(this.idx == id){ // this.idx = -1; // }else{ // this.idx = id; // } } }, }) </script>

栏目热文

文档排行

本站推荐

Copyright © 2018 - 2021 www.yd166.com., All Rights Reserved.