js 设置表格单行上线移动,splice

后台管理项目中,菜单或者字典项有时候需要手动调节数据的上下位置,不依赖后端接口,单纯前端操作

JavaScript中的splice主要用来对js中的数组进行操作,包括删除,添加,替换等。

1.删除-用于删除元素,两个参数,第一个参数(要删除第一项的位置),第二个参数(要删除的项数)
2.插入-向数组指定位置插入任意项元素。三个参数,第一个参数(插入位置),第二个参数(0),第三个参数(插入的项)
3.替换-向数组指定位置插入任意项元素,同时删除任意数量的项,三个参数。第一个参数(起始位置),第二个参数(删除的项数),第三个参数(插入任意数量的项)

//表格中列数据操作按钮
<div slot='sort' slot-scope='text, record, index'>
     <div class="icon-group">
       <div class="icon" v-if="index!==0" @click="setSort(index,true)">
         <img src="@/assets/icon/direction-up.png" alt="">
       </div>
       <div class="icon" v-if="index!==dataSource.length-1" @click="setSort(index)">
         <img src="@/assets/icon/direction-down.png" alt="">
       </div>
    </div>
</div>
//排序
setSort(index, flag){
   // flag为true-升序
   const num = flag ? index - 1 : index + 1
   const item = this.dataSource.splice(index, 1)
   this.dataSource.splice(num, 0, item[0])
}       

 

posted @ 2022-11-17 10:44  念初~逝水  阅读(99)  评论(0)    收藏  举报