Vue如何实现table表格置顶

 更新时间:2022年04月23日 14:27:25   作者:洛一一珞  
这篇文章主要介绍了Vue如何实现table表格置顶,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

如何实现table表格置顶

老大让做vue项目,可是我对vue还不熟,抓紧时间学习,记录

此处省略css

<table id="toptable" >
    <thead>
        <tr>
            <th>序号</th>
            <th>显示顺序</th>
            <th>景区名称</th>
            <th>景区地址</th>
            <th width="230px"></th>
        </tr>
    </thead>
    <tbody>
        <tr v-for="(item,index) of dataList">
            <td v-text="item.code"></td>
            <td v-text="index+1"></td>
            <td v-text="item.name"></td>
            <td v-text="item.region"></td>
            <td style="text-align: right;">
                <button v-if="index !==0" @click="getTop(index)">置顶</button>
                <button @click="delData(index)">删除</button>
            </td>
        </tr>
    </tbody>
</table>
<script>
    var vtable=new Vue({
        el:"#toptable",
        data:{
            dataList:[]
        },
        mounted(){
            this.showData();
        },
        methods:{
            showData () {
                axios.get("arealist.json").then(response=>{
                    for(let i=0;i<response.data.length;i++){
                        vtable.dataList.push(response.data[i]);
                    }
                })
            },
            deleteData(index){
                if(!confirm("您确定要删除此景区吗?")){
                    return false;
                }
                vtable.dataList.splice(index,1);
            },
            getTop(index){
                var returnTop=vp.dataList[index];
                vtable.dataList.splice(index,1)
                vtable.dataList.unshift(returnTop);
            }
        }
    })
</script>
[
    {
      "name":"狼牙山景区",
      "code":"00123545",
      "region":"保定 易县"
    },{
      "name":"白洋淀",
      "code":"00343445",
      "region":"保定 白洋淀"
    },{
      "name":"野山坡",
      "code":"00123598",
      "region":"保定 涞水"
    }
]

置顶前

置顶后

点击table表格某一行让其置顶

我这里的使用场景是点击某一行的使用,该行的数据就调整在第一行显示了

//给使用按钮添加方法,方法如下
use(row) {
	let values = this.tableData;//这个是表格数据
	let value = row;
	let res = [value].concat(values.filter(item => item != value));//concat() 方法用于连接两个或多个数组
	console.log(res);
	this.tableData = res;
}

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

相关文章

  • Vue 获取数组键名的方法

    Vue 获取数组键名的方法

    本篇文章主要介绍了Vue 获取数组键名的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-06-06
  • vue 实现购物车总价计算

    vue 实现购物车总价计算

    今天小编就为大家分享一篇vue 实现购物车总价计算,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-11-11
  • vue-i18n实现中英文切换的方法

    vue-i18n实现中英文切换的方法

    这篇文章主要介绍了vue-i18n实现中英文切换的方法,文中示例代码非常详细,帮助大家更好的理解和学习,感兴趣的朋友可以了解下
    2020-07-07
  • vue如何通过router-link或者button跳转到一个新的页面

    vue如何通过router-link或者button跳转到一个新的页面

    这篇文章主要介绍了vue如何通过router-link或者button跳转到一个新的页面,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-10-10
  • vue实现一个获取按键展示快捷键效果的Input组件

    vue实现一个获取按键展示快捷键效果的Input组件

    这篇文章主要介绍了vue如何实现一个获取按键展示快捷键效果的Input组件,帮助大家更好的理解和使用vue框架,感兴趣的朋友可以了解下
    2021-01-01
  • vue.js 中使用(...)运算符报错的解决方法

    vue.js 中使用(...)运算符报错的解决方法

    这篇文章主要介绍了vue.js 中使用(...)运算符报错的解决方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-08-08
  • vue+axios实现图片上传识别人脸的示例代码

    vue+axios实现图片上传识别人脸的示例代码

    本文主要介绍了vue+axios实现图片上传识别人脸,这里采用的是vant的文件上传组件,通过上传图片后端识别图片里的人脸,感兴趣的可以了解一下
    2021-11-11
  • vue3项目如何国际化实战指南

    vue3项目如何国际化实战指南

    像很多大型的网址,特别是跨国际等公司网页,访问来自世界各地用户,所以网页的国际化极其重要的需求,下面这篇文章主要给大家介绍了关于vue3项目如何国际化的相关资料,需要的朋友可以参考下
    2022-09-09
  • vue父子组件传值不能实时更新的解决方法

    vue父子组件传值不能实时更新的解决方法

    Vue是一个以数据驱动、组件化的前端框架,其中组件化是Vue中较为重要的概念之一,组件之间的通信则成为Vue中较为普遍的需求,下面这篇文章主要给大家介绍了关于vue父子组件传值不能实时更新的解决方法,需要的朋友可以参考下
    2023-05-05
  • 浅谈vue实现双向事件绑定v-model的原理

    浅谈vue实现双向事件绑定v-model的原理

    vue使用v-model实现数据的双向绑定,它会根据控件类型自动选取正确的方法来更新元素,本文就详细的介绍一下原理,感兴趣的可以了解一下
    2021-08-08

最新评论