1500字范文,内容丰富有趣,写作好帮手!
1500字范文 > vue 上传图片函数封装 直接调用

vue 上传图片函数封装 直接调用

时间:2020-11-02 03:26:29

相关推荐

vue 上传图片函数封装 直接调用

更新一下内容,代码已更新。特定情况下出现了一个小bug,页面中一个input多次上传同一个文件,上传前需要先清空input的value,否则@change事件将不会触发

结构,样式可以自己修改

<input type="file" @change="addimg($event)">

在公用函数commonfn.js文件里面添加一个方法

let fileBaseurl = 'http://xxxxxxxxxxxx/upImages' //你的图片上传地址import axios from 'axios';export function uploadimg (event) {// 传参是$eventlet img1 = event.target.files[0];let type = img1.type;let size = img1.size;let typelist = 'image/jpeg, image/png, image/jpg'if (typelist.indexOf(type) === -1) {alert('支持上传的图片格式不对')return false; }if (size>5242880) {alert('上传图片不能大于5m')return false; } let form = new FormData();form.append('file',img1);event.target.value = '' // 一个inputfile多次上传前清空return axios.post(fileBaseurl, form, {headers:{'Content-Type':'multipart/form-data'},withCredentials:true}).then(res => {let result = res.datareturn Promise.resolve(result)}).catch(res => {return Promise.reject(res.data)})}

调用

//script 引入import {uploadimg } from '@/xxxxxxx/commonfn.js' // 按自己的文件位置引入// methods里面执行addimg (el) {uploadimg(el).then(res => {console.log(res) //返回值}).catch(res => {alert('上传失败')})},

返回结果展示,这个比较简单应该易懂。over

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。