最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

vue+element-ui+sortable.js實現(xiàn)表格拖拽功能

 更新時間:2022年04月13日 09:52:58   作者:麥兜:)  
這篇文章主要為大家詳細介紹了vue+element-ui+sortable.js實現(xiàn)表格拖拽功能,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下

本文實例為大家分享了vue+element-ui+sortable.js實現(xiàn)表格拖拽的具體代碼,供大家參考,具體內(nèi)容如下

效果如下:

1.vue使用cli創(chuàng)建項目就不說了,本人使用的是cli3.x版本

2.下載element-ui

npm i element-ui -S

3.引入element-ui,找到main.js,加入如下代碼

// 導(dǎo)入element-ui,和全局使用element-ui樣式
import ElementUI from "element-ui";
import "element-ui/lib/theme-chalk/index.css";

// 使用 ElementUI 組件庫
Vue.use(ElementUI);

4.下載sortablejs,官網(wǎng)為http://www.sortablejs.com/index.html,可在里面看你需要的效果(配置項)

npm install sortablejs --save

5.效果圖的全部代碼

<template>
? <div style="width:800px">
? ? <el-table :data="tableData" border row-key="id" align="left">
? ? ? <el-table-column
? ? ? ? v-for="(item, index) in col"
? ? ? ? :key="`col_${index}`"
? ? ? ? :prop="dropCol[index].prop"
? ? ? ? :label="item.label"
? ? ? >
? ? ? </el-table-column>
? ? </el-table>
? ? <!-- pre:json數(shù)據(jù)格式化展示 -->
? ? <pre style="text-align: left">
? ? ? {{ dropCol }}
? ? </pre>
? ? <hr />
? ? <pre style="text-align: left">
? ? ? {{ tableData }}
? ? </pre>
? </div>
</template>
<script>
import Sortable from "sortablejs";
export default {
? data() {
? ? return {
? ? ? col: [
? ? ? ? {
? ? ? ? ? label: "日期",
? ? ? ? ? prop: "date"
? ? ? ? },
? ? ? ? {
? ? ? ? ? label: "姓名",
? ? ? ? ? prop: "name"
? ? ? ? },
? ? ? ? {
? ? ? ? ? label: "地址",
? ? ? ? ? prop: "address"
? ? ? ? }
? ? ? ],
? ? ? dropCol: [
? ? ? ? {
? ? ? ? ? label: "日期",
? ? ? ? ? prop: "date"
? ? ? ? },
? ? ? ? {
? ? ? ? ? label: "姓名",
? ? ? ? ? prop: "name"
? ? ? ? },
? ? ? ? {
? ? ? ? ? label: "地址",
? ? ? ? ? prop: "address"
? ? ? ? }
? ? ? ],
? ? ? tableData: [
? ? ? ? {
? ? ? ? ? id: "1",
? ? ? ? ? date: "2019-12-23",
? ? ? ? ? name: "王小虎1",
? ? ? ? ? address: "上海市普陀區(qū)金沙江路 100 弄"
? ? ? ? },
? ? ? ? {
? ? ? ? ? id: "2",
? ? ? ? ? date: "2019-12-22",
? ? ? ? ? name: "王小虎2",
? ? ? ? ? address: "上海市普陀區(qū)金沙江路 200 弄"
? ? ? ? },
? ? ? ? {
? ? ? ? ? id: "3",
? ? ? ? ? date: "2019-12-21",
? ? ? ? ? name: "王小虎3",
? ? ? ? ? address: "上海市普陀區(qū)金沙江路 300 弄"
? ? ? ? },
? ? ? ? {
? ? ? ? ? id: "4",
? ? ? ? ? date: "2019-12-20",
? ? ? ? ? name: "王小虎4",
? ? ? ? ? address: "上海市普陀區(qū)金沙江路 400 弄"
? ? ? ? }
? ? ? ]
? ? };
? },
? mounted() {
? ? this.rowDrop();
? ? this.columnDrop();
? },
? methods: {
? ? //行拖拽
? ? rowDrop() {
? ? ? const tbody = document.querySelector(".el-table__body-wrapper tbody");
? ? ? const _this = this;
? ? ? Sortable.create(tbody, {
? ? ? ? // 官網(wǎng)上的配置項,加到這里面來,可以實現(xiàn)各種效果和功能
? ? ? ? animation: 150,
? ? ? ? ghostClass: "blue-background-class",
? ? ? ? onEnd({ newIndex, oldIndex }) {
? ? ? ? ? const currRow = _this.tableData.splice(oldIndex, 1)[0];
? ? ? ? ? _this.tableData.splice(newIndex, 0, currRow);
? ? ? ? }
? ? ? });
? ? },
? ? //列拖拽
? ? columnDrop() {
? ? ? const wrapperTr = document.querySelector(".el-table__header-wrapper tr");
? ? ? this.sortable = Sortable.create(wrapperTr, {
? ? ? ? animation: 180,
? ? ? ? delay: 0,
? ? ? ? onEnd: evt => {
? ? ? ? ? const oldItem = this.dropCol[evt.oldIndex];
? ? ? ? ? this.dropCol.splice(evt.oldIndex, 1);
? ? ? ? ? this.dropCol.splice(evt.newIndex, 0, oldItem);
? ? ? ? }
? ? ? });
? ? }
? }
};
</script>
<style scoped></style>

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • vue-cli3.X快速創(chuàng)建項目的方法步驟

    vue-cli3.X快速創(chuàng)建項目的方法步驟

    這篇文章主要介紹了vue-cli3.X快速創(chuàng)建項目的方法步驟,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習或者工作具有一定的參考學(xué)習價值,需要的朋友們下面隨著小編來一起學(xué)習學(xué)習吧
    2019-11-11
  • 在Vue中配置代理服務(wù)器的方法詳解

    在Vue中配置代理服務(wù)器的方法詳解

    這篇文章主要給大家介紹了關(guān)于如何在Vue中配置代理服務(wù)器的相關(guān)資料,文中通過圖文以及示例代碼介紹的非常詳細,對大家的學(xué)習或者工作具有一定的參考學(xué)習價值,需要的朋友可以參考下
    2022-12-12
  • vue使用@scroll監(jiān)聽滾動事件時,@scroll無效問題的解決方法詳解

    vue使用@scroll監(jiān)聽滾動事件時,@scroll無效問題的解決方法詳解

    這篇文章主要介紹了vue使用@scroll監(jiān)聽滾動事件時,@scroll無效問題的解決方法,結(jié)合實例形式分析了@scroll監(jiān)聽滾動事件無效問題的原因及相應(yīng)的解決方法,需要的朋友可以參考下
    2019-10-10
  • Vue3中echarts無法縮放的問題及解決方案

    Vue3中echarts無法縮放的問題及解決方案

    很多朋友在使用vue3+echarts5技術(shù)時會遇到echarts無法綻放的問題,今天小編就給大家分享下問題描述及解決方案,感興趣的朋友跟隨小編一起看看吧
    2022-11-11
  • 詳解vue-router2.0動態(tài)路由獲取參數(shù)

    詳解vue-router2.0動態(tài)路由獲取參數(shù)

    本篇文章主要介紹了詳解vue-router2.0動態(tài)路由獲取參數(shù),小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-06-06
  • Vue ElementUI this.$confirm async await封裝方式

    Vue ElementUI this.$confirm async await封

    這篇文章主要介紹了Vue ElementUI this.$confirm async await封裝方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-09-09
  • vue實現(xiàn)分頁的三種效果

    vue實現(xiàn)分頁的三種效果

    這篇文章主要為大家詳細介紹了vue實現(xiàn)分頁的三種效果,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-06-06
  • vue.js,ajax渲染頁面的實例

    vue.js,ajax渲染頁面的實例

    下面小編就為大家分享一篇vue.js,ajax渲染頁面的實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-02-02
  • Vue鼠標滾輪滾動切換路由效果的實現(xiàn)方法

    Vue鼠標滾輪滾動切換路由效果的實現(xiàn)方法

    這篇文章主要介紹了Vue鼠標滾輪滾動切換路由效果的實現(xiàn)方法,本文給大家介紹的非常詳細,對大家的學(xué)習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-08-08
  • vue element upload組件 file-list的動態(tài)綁定實現(xiàn)

    vue element upload組件 file-list的動態(tài)綁定實現(xiàn)

    這篇文章主要介紹了vue element upload組件 file-list的動態(tài)綁定實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學(xué)習或者工作具有一定的參考學(xué)習價值,需要的朋友們下面隨著小編來一起學(xué)習學(xué)習吧
    2019-10-10

最新評論

台南市| 安达市| 岚皋县| 九江县| 神农架林区| 曲水县| 内丘县| 三穗县| 濮阳县| 苏尼特右旗| 常州市| 灵宝市| 宣汉县| 天镇县| 舟山市| 汉沽区| 青浦区| 乳源| 安岳县| 汤原县| 南溪县| 盐山县| 固始县| 高邑县| 阿城市| 深水埗区| 通道| 高邑县| 乌鲁木齐县| 北票市| 长乐市| 封丘县| 柏乡县| 红原县| 根河市| 含山县| 九台市| 思茅市| 桑植县| 湖南省| 南开区|