vue实现展开收起

<template>
  <div class="select-box">
    <div class="select-box-top">
      <label>项目名称</label>
      <span v-if="isShowNameType" @click="handleIsShowNameType">展开</span>
      <span v-if="!isShowNameType" @click="handleIsShowNameType">收起</span>
    </div>
    <ul class="select-list" :style="isShowNameType ? activeNameStyle : showNameStyle" style="width:400px;list-style:none;border: 1px solid red;height: 400px;">
      <li @click="selectNameType(index, item)" v-for="(item, index) in proNameList"
        :class="activeNameIndex == index ? 'active' : ''" :key="index" style="height:0px 30px 30px 30px;width:100px;background:pink;display: block;float: left;margin:5px;">
        {{ item.project_name }}
      </li>
    </ul>
    <h2>
      标题标题
    </h2>
  </div>
</template>
<script>
  // import { defineComponent } from '@vue/composition-api'

  export default {
    data() {
      return {
        activeNameStyle: 'height: 1.44rem; overflow: hidden;',
        showNameStyle: 'min-height: 1.44rem;',
        isShowNameType: true,
        activeNameIndex: null,
        proNameList: [{
            project_id: 1,
            project_name: "初始项目"
          },
          {
            project_id: 1,
            project_name: "初始项目"
          },
          {
            project_id: 1,
            project_name: "初始项目"
          },
          {
            project_id: 1,
            project_name: "初始项目"
          },
          {
            project_id: 1,
            project_name: "初始项目"
          },
          {
            project_id: 1,
            project_name: "初始项目"
          },
          {
            project_id: 1,
            project_name: "初始项目"
          },
          {
            project_id: 1,
            project_name: "初始项目"
          },
          {
            project_id: 1,
            project_name: "初始项目"
          },
          {
            project_id: 1,
            project_name: "初始项目"
          }
        ]
      }
    },
    methods: {
      handleIsShowNameType() {
        this.isShowNameType = !this.isShowNameType;
      },
      selectNameType(index, item) {
        this.activeNameIndex = index;
      },
    }
  }
</script>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值