vue动态选中状态切换效果

软件发布|下载排行|最新软件

当前位置:首页IT学院IT技术

vue动态选中状态切换效果

黑暗中跳舞的月亮   2022-06-03 我要评论

动态选中状态切换效果

 HTML中的内容为以下。

<ul class="list">
     <li v-for="(item,index) in liList" v-on:click="addClass(index)" v-bind:class="{ 
         ischeck:index==current}">{{item.title}}</li>
</ul>

JS中的内容为以下。

data () {
    return {
            current:0,
            liList:[
                {title:'中国'},
                {title:'美国'},
                {title:'英国'},
                {title:'法国'}
            ]
    }
},
methods:{    
    addClass:function(index){
          this.current=index
    }
}  

CSS中的内容如下。

.ischeck  {
    background: #e6e6e6;
    height: 30px;
    width: 50px;
    line-height: 0px;
    padding: 15px 10px;
}

vue状态转换

状态展示

第一种方法

<el-table-column prop="sfgh" label="是否归还" align="center">
                <template scope="scope">
                    <p v-if="scope.row.sfgh=='0'">
                        <el-button  href="javascript:void(0)" @click="getWzghInfo(scope.$index, scope.row)">已归还</el-button>
                    </p>
                    <p v-if="scope.row.sfgh=='1'">未归还</p>
                    <p v-if="scope.row.sfgh=='2'">未还清</p>
                </template>
            </el-table-column>

第二种方法

使用formatter来实现

代码如下:

<el-table-column label="状态" :formatter="statusFormat">
</el-table-column>
 
methods: {
     statusFormat: function(row, column) {
        let status = row.status;
        let statusW = "未缴费";
        if(status == undefined) {     
              statusW = "未缴费";     
        }  
       switch(status) {
           case 1:
           statusW = "已缴费";
           break;
          case 2:
          statusW = "退款申请中";
          break;
     }
       return statusW;
 }
}

以上为个人经验,希望能给大家一个参考,也希望大家多多支持。

Copyright 2022 版权所有 软件发布 访问手机版

声明:所有软件和文章来自软件开发商或者作者 如有异议 请与本站联系 联系我们