el-upload组件上传文件

一、单文件上传

可以使用组件自动上传

headers:根据后端的请求头要求进行设置

name:根据数据上传对应的字段名

action:自动上传必填

before-upload/on-change:二选一,在图片上传前对图片进行选取处理

on-success:上传成功返回成功信息

el-button:进行选取图片并触发上传

补充:

:http-request:可以对action进行覆盖,自定义上传方法,也是自动上传 

二、多文件上传

:auto-upload为false限制自动上传,action不起作用

直接使用el-button点击进行文件上传

on-change的处理函数进行文件数据获取,存储进数组里

上传函数利用 FormData()进行数据处理,把字段名和文件数据一一对应形成数组形式,作为上传的参数

文件上传通过axios.post,设置好请求头和请求接口,最后成功返回成功消息

补充:

数据上传成不成功,一是看请求接口是否正确,二是看请求头是token或是其他,三是后端接收数据是什么数据类型,对象,数组或简单数据类型,还有后端对上传数据的限制,如文件大小,字数多少等,以上三个,其中一个不正确都会造成数据上传不成功!!!

  • 5
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
el-upload组件Element UI中的一个上传组件,支持多种上传方式,包括文件上传、图片上传、拖拽上传等。 formFile文件上传是一种通过表单提交文件的方式进行上传。在el-upload组件中,可以通过设置action属性来指定上传文件的URL地址,然后在上传前将文件转换为FormData对象,通过POST方式提交到服务器端。 以下是一个使用el-upload组件进行文件上传的示例代码: ``` <template> <el-upload class="upload-demo" :action="uploadUrl" :on-success="handleSuccess" :before-upload="beforeUpload" :show-file-list="false"> <el-button size="small" type="primary">点击上传</el-button> </el-upload> </template> <script> export default { data() { return { uploadUrl: '/api/upload', formData: { file: null } } }, methods: { handleSuccess(response) { console.log(response); }, beforeUpload(file) { const formData = new FormData(); formData.append('file', file); this.formData.file = formData; return true; } } } </script> ``` 在上面的代码中,我们定义了一个el-upload组件,并设置了以下属性: - `action`:上传文件的URL地址,这里设置为`/api/upload`。 - `on-success`:上传成功后的回调函数,这里使用`handleSuccess`方法进行处理。 - `before-upload`:上传前的处理函数,这里使用`beforeUpload`方法将文件转换为FormData对象。 - `show-file-list`:是否显示上传文件列表,这里设置为`false`,表示不显示。 在`beforeUpload`方法中,我们首先创建了一个FormData对象,然后将文件添加到FormData中。最后将FormData对象赋值给组件的`formData`属性,以便在上传时使用。注意,这里需要返回`true`,表示继续上传操作。 在`handleSuccess`方法中,我们可以处理上传成功后的响应数据,这里只是将响应数据输出到控制台中。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值