首页 > 其他分享 >vue升序降序按钮功能实现

vue升序降序按钮功能实现

时间:2023-12-14 20:23:05浏览次数:26  
标签:status vue solid 降序 height 升序 border transparent 4px

需求:默认升序,悬浮按钮变色,点击按钮下标跟随变化。

image

html

        <div class="right"
          @click="change(item,index)"
          v-for="(item, index) in btnList"
          :key="index">{{item.lable}}
          <div class="box-icon">
            <div class="up"
              :class="item.status === 1 ? 'opacity-5' : ''"></div>
            <div class="down"
              :class="item.status === 1 ? 'opacity-1' : ''"></div>
          </div>
        </div>

js

data(){
 return{
      btnList: [
        { lable: "更新时间", status: 0 },
        { lable: "访问量", status: 0 },
        { lable: "申请量", status: 0 },
      ],
    }
},
methods:{
    change(item, index) {
      this.btnList[index].status === 0
        ? (this.btnList[index].status = 1)
        : (this.btnList[index].status = 0);
    }
}

css

    .right {
      padding: 0 20px;
      height: 32px;
      color: #505363;
      font-weight: 400;
      font-size: 14px;
      margin-left: 10px;
      border: 1px solid rgb(233, 231, 231);
      display: flex;
      justify-content: center;
      line-height: 32px;
      cursor: pointer;
    }
    .right:hover {
      color: #217aff;
      border: 1px solid #217aff;
      .up {
        border-bottom: 6px solid #217aff;
      }
      .down {
        border-top: 6px solid #217aff;
      }
    }
    .opacity-5 {
      opacity: 0.5;
    }
    .opacity-1 {
      opacity: 1 !important;
    }
    .box-icon {
      height: 30px;
      margin-top: 7px;
      .up {
        width: 0px; /*设置宽高为0,所以div的内容为空,从才能形成三角形尖角*/
        height: 0px;
        border-bottom: 6px solid #a3a5b3;
        border-left: 4px solid transparent; /*transparent 表示透明*/
        border-right: 4px solid transparent;
        margin-bottom: 4px;
      }
      .down {
        width: 0px;
        height: 0px;
        opacity: 0.5;
        border-top: 6px solid #a3a5b3;
        border-left: 4px solid transparent;
        border-right: 4px solid transparent;
      }
    }
    .box-icon div {
      height: 10px;
      margin-left: 4px;
    }

标签:status,vue,solid,降序,height,升序,border,transparent,4px
From: https://www.cnblogs.com/guozhiqiang/p/17901925.html

相关文章

  • VueRouter 路由使用
    一安装对应版本的VueRouter二在main.js做相关操作  importVuefrom'vue'importAppfrom'./App.vue'//引入路由配置文件importrouterfrom'./router/index.js'Vue.config.productionTip=false//引入实例对象newVue({ el:"#app",render:h=......
  • Vue2 校验不通过的表单,赋正确的值后,再次校验结果不变
    前言在工作中遇到了这个问题,多次排查,耗费了不少时间才解决这个问题。问题的解决很简单,但发现根本原因还是有点困难,因此在此做个记录,以防忘记。问题发现步骤例如有以下AntDesignVue表单<a-form-modelref="formRef":model="model"><a-form-model-itemlabel="姓名"pr......
  • Vue 图片上传formdata()传参形式
    1.接口需要设置 headers:{'Content-Type':'multipart/form-data'}, from-data流的形式传参 2.jshtml://文件上传<divclass="file"><el-buttontype="primary"style="width:170px"icon="el-icon-upload......
  • vue2 中 el-table 实现树形列表,支持增删改等操作
    需求场景:el-table构造一个树形列表,支持新增节点,删除,修改等操作。实现效果思路 一般的el-table增删改,我们都很熟悉;关键在于实现一个纯前端的树形列表,最终再调接口存列表数据。     树形el-table,需要设置 row-key,一般为id,所以每新增一条数据,都必须有id。需......
  • vue路由切换时内容组件的滚动条回到顶部
    vue路由切换时内容组件的滚动条回到顶部:https://blog.csdn.net/Macao7_W/article/details/125517519?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522170252373016800185826420%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fall.%2522%257D&request_id=......
  • Vue + Element UI 实现复制当前行数据功能(复制到新增页面组件值不能更新等问题解决)
    1、需求使用Vue+ElementUI实现在列表的操作栏新增一个复制按钮,复制当前行的数据可以打开新增弹窗后亦可以跳转到新增页面,本文实现为跳转到新增页面。2、实现1)列表页index.vue<el-table><!--其他列--><el-table-columnlabel="操作"width="150"><templateslot-scope=......
  • vue中echarts图表---正负轴柱状图
    一、安装npmiecharts--save二、引入//全局引入importechartsfrom'echarts'Vue.prototype.$echarts=echarts//局部【这里使用局部引入】importechartsfrom'echarts';三、代码1<!--容器-->2<divid="cylinderEcharts"ref="cyl......
  • vue项目 npm install 安装依赖 特别慢 解决办法
    vue项目npminstall安装依赖特别慢解决办法使用NPM(Node.js包管理工具)安装依赖时速度特别慢,为了安装Express,执行命令后两个多小时都没安装成功,最后只能取消安装,笔者20M带宽,应该不是我网络的原因,后来在网上找了好久才找到一种最佳解决办法,在安装时可以手动指定从哪个镜像服务器......
  • vue过滤器
    使用场景:加工属性,对属性做一些类似格式化的操作但不会改变该属性;看起来跟computed类似,后面总结两者区别使用地方:可以放在{{}}插值中使用,也可以在v-bind表达式中使用(vue2.1.0+支持)注意事项:过滤器中this不能获取vue实例全局过滤器://main.jsVue.filter('filterFun',function......
  • uniapp开发——纯原生渲染nvue调用uni.makePhoneCall没反应的处理办法
    uni.makePhoneCall(OBJECT)|uni-app官网(dcloud.net.cn)正常情况下,manifest.json配置拨打电话的权限就可以了:配置权限后重新打包,真机运行应该就可以正常的拨打电话了。如果API没反应,那么可以试试下边这种不弹出询问框直接拨打电话的方法:callMobile(){letmobile......