el-upload上传图片action
时间: 2023-04-23 08:04:25 浏览: 232
el-upload上传图片action是指el-upload组件中的action属性,用于指定上传图片的接口地址。当用户选择图片后,el-upload组件会将图片上传到指定的接口地址。该属性通常需要与其他属性一起使用,如headers、data等,以确保上传图片的安全性和正确性。
相关问题
el-upload上传图片成功后,隐藏继续el-upload组件,只显示已上传的图片
可以通过监听 `on-success` 事件,在事件回调函数中获取上传成功的文件列表,然后将这些文件列表保存到组件的 `file-list` 属性中,最后将 `show-file-list` 属性设置为 `true`,这样组件就会隐藏上传区域,只显示已上传的文件列表。
具体实现代码如下:
```html
<template>
<div>
<el-upload
ref="upload"
class="upload-demo"
:action="uploadUrl"
:on-success="handleSuccess"
:file-list="fileList"
:show-file-list="showFileList"
:auto-upload="false"
:list-type="'picture'"
multiple>
<el-button slot="trigger" size="small" type="primary">选取文件</el-button>
<el-button size="small" type="success" @click="submitUpload">上传到服务器</el-button>
<el-button size="small" type="warning" @click="clearFiles">清空文件</el-button>
</el-upload>
<el-divider></el-divider>
<div v-if="showFileList">
<el-image v-for="(file, index) in fileList" :key="index" :src="file.url" style="margin-right: 20px" :fit="fit" :preview-src-list="previewSrcList"></el-image>
</div>
</div>
</template>
<script>
export default {
data() {
return {
uploadUrl: '/upload',
fileList: [],
showFileList: false,
previewSrcList: [],
fit: 'cover'
}
},
methods: {
handleSuccess(response, file, fileList) {
fileList.forEach(item => {
this.previewSrcList.push(item.url)
})
this.fileList = fileList
this.showFileList = true
},
submitUpload() {
this.$refs.upload.submit()
},
clearFiles() {
this.fileList = []
this.showFileList = false
this.previewSrcList = []
}
}
}
</script>
```
在上面的代码中,我们监听了 `on-success` 事件,并在事件回调函数中获取上传成功的文件列表,然后将这些文件列表保存到 `fileList` 属性中,最后将 `showFileList` 属性设置为 `true`,这样组件就会隐藏上传区域,只显示已上传的文件列表。
同时,我们在显示已上传的文件列表时,通过 `v-for` 指令遍历 `fileList` 数组,使用 `el-image` 组件来显示每个文件的预览图,并通过 `preview-src-list` 属性设置预览图的列表。
el-upload上传图片
el-upload是一个Vue组件,用于实现图片上传功能。它有一些属性可以配置上传的行为。其中,action属性指定了上传的地址,accept属性指定了接受上传的文件类型,show-file-list属性用于控制是否显示已上传文件列表,on-change属性是一个回调函数,用于处理文件状态的改变,before-upload属性用于在选取文件后进行上传前的一些限制条件判断,auto-upload属性用于控制是否在选取文件后立即进行上传。\[1\]\[2\]
在methods中,handleLicensePreview方法是用于处理上传图片的函数。它会判断文件的大小是否小于2MB,如果超过了限制,则会给出错误提示。如果文件大小符合要求,它会创建一个FormData对象,并将文件添加到FormData中,然后将图片的URL存储到form.img中,以便在确认按钮点击时统一上传。beforeLicenseUpload方法用于限制上传的文件格式和大小。它会判断文件的后缀名是否在白名单中,如果不在白名单中,则会给出错误提示。同时,它也会判断文件的大小是否小于2MB,如果超过了限制,则会给出错误提示。\[3\]
总结起来,el-upload组件可以实现图片上传功能,通过配置属性和使用回调函数,可以对上传的文件进行限制和处理。同时,通过methods中的函数,可以对上传的图片进行大小和格式的限制。
#### 引用[.reference_title]
- *1* *2* *3* [Element-ui中el-upload上传图片并有预览功能](https://blog.csdn.net/qq_45829293/article/details/122882117)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item]
[ .reference_list ]
阅读全文