• vue中基于sortablejs与elupload实现文件上传后拖拽排序


    今天做冒烟测试的时候发现商品发布有一个拖拽图片排序功能没做,赶紧加上

    之前别的同事基于 vuedraggable 实现过这个功能,我这里自己深度封装了 el-upload ,用这种方式改动很大,而且感觉不够优雅。

    突然想起之前看的d2-admin项目里面有类似的功能,里面用到了 sortablejs 参考一下。审查元素看看,emmm,可以用。

    下载依赖 npm install sortablejs

    关键代码如下,轻松实现拖拽排序功能,并且很优雅。

     1 <template>
     2   <!-- 省略其他配置 -->
     3   <el-upload ref="upload" :file-list.sync="fileList"></el-upload>
     4 </template>
     5 <script>
     6 import Sortable from 'sortablejs';
     7 export default {
     8   data() {
     9     return {
    10       fileList: []
    11     };
    12   },
    13   mounted() {
    14     this.initDragSort();
    15   },
    16   methods: {
    17     initDragSort() {
    18       // 支持拖拽排序
    19       const el = this.$refs.upload.$el.querySelectorAll('.el-upload-list')[0];
    20       Sortable.create(el, {
    21         onEnd: ({ oldIndex, newIndex }) => {
    22           // 交换位置
    23           const arr = this.fileList;
    24           const page = arr[oldIndex];
    25           arr.splice(oldIndex, 1);
    26           arr.splice(newIndex, 0, page);
    27         }
    28       });
    29     }
    30   }
    31 };
    32 </script>
  • 相关阅读:
    安全性测试的测试点
    Python基础,,小题目
    Python画小猪佩奇
    Python代码
    Python画圆
    python编写贪吃蛇游戏
    主键、外键的作用,索引的优点与不足
    LoadRunner分为哪三个模块?请简述各模块的主要功能。
    测试结束的标准
    坚持“5W”规则,明确内容与过程
  • 原文地址:https://www.cnblogs.com/mlzs/p/16079075.html
Copyright © 2020-2023  润新知