el-upload图片进行拖拽排序
时间: 2023-10-14 13:12:39 浏览: 111
el-upload 组件并不支持拖拽排序,但你可以使用第三方插件如 vue-draggable,结合 el-upload 组件来实现拖拽排序功能。具体实现步骤如下:
1. 安装 vue-draggable 插件:
```
npm install vuedraggable --save
```
2. 在需要使用的组件中引入 vue-draggable:
```
import draggable from 'vuedraggable'
```
3. 在 el-upload 组件中添加一个 v-model,用于双向绑定上传文件列表:
```
<el-upload
v-model="fileList"
...
>
...
</el-upload>
```
4. 在 el-upload 组件下方添加一个 draggable 组件,用于显示上传文件列表并实现拖拽排序:
```
<draggable :list="fileList" v-model="fileList">
<div v-for="(file, index) in fileList" :key="file.name">
<el-card>
<img :src="file.url" />
<div>{{ file.name }}</div>
<div>{{ file.size }} bytes</div>
</el-card>
</div>
</draggable>
```
5. 添加样式使得上传文件列表和拖拽排序效果更加美观:
```
.el-card {
margin: 10px;
width: 150px;
height: 200px;
text-align: center;
display: inline-block;
vertical-align: top;
cursor: pointer;
}
.el-card:hover {
box-shadow: 0px 0px 10px #aaa;
}
.el-card img {
max-width: 100%;
max-height: 100%;
object-fit: contain;
}
```
这样,你就实现了 el-upload 组件的拖拽排序功能。
阅读全文