Vue formData实现图片上传


Posted in Javascript onAugust 20, 2019

本文实例为大家分享了Vue formData实现图片上传的具体代码,供大家参考,具体内容如下

import Vue from 'vue'
 
/**
 * 图片上传
 * 已注入所有Vue实例,
 * template模板里调用 $uploadFile(id)
 * 组件方法里调用 this.$uploadFile(id)
 */
const uploadFile = (id) => {
 let promise = new Promise((resolve, reject) => {
  let file = null
  let el = null
  let i = 0
  let formData = new FormData()
  document.getElementById(id).click()
  el = document.getElementById(id)
  el.addEventListener('change', function (e) {
   i++
   if (i !== 1) {
    return false
   } else {
    file = this.files[0]
    formData.append('file', file)
    formData.append('fileType', 'IMAGE')
    // 数据请求
    Vue.axiosfrom(Vue.api.upload, formData).then(res => {
     // 返回图片url
     resolve(res)
    }).catch(err => {
     reject(err)
    })
   }
  })
 })
 return promise
}
 
Vue.prototype.$uploadFile = uploadFile

axios请求头设置

import Vue from 'vue'
import { baseURL } from '@/config/env'
import axios from 'axios'
 
// formdata 请求
const axiosT = axios.create({
 baseURL: baseURL,
 headers: {
  'Content-Type': 'multipart/form-data'
 }
})
 
const XHR = ({method = 'post', qs = true, loading = false, loginRequire = true, reqComplex = false, reqContentType = 'urlencoded'}) => {
 // 带请求进度条成功方法
 const sucFunX = res => {
  return res.data
 }
 // 成功执行方法
 const sucFunC = res => {
  return res.data
 }
 // 带请求进度条失败方法
 const errFunX = err => {
  console.log(err, NProgress.done())
 }
 // 失败执行访求
 const errFunC = err => {
  console.log(err)
 }
 // 判断是否需要Longing
 const sucFun = loading ? sucFunX : sucFunC
 // 判断是否需要Longing
 const errFun = loading ? errFunX : errFunC
 return {user, sucFun, errFun}
}
 
// 表单请求 图片上传
const axiosfrom = function (url = '', data = {}) {
 let {sucFun, errFun} = XHR({loading: false})
 return axiosT.post(url, data).then(sucFun).catch(errFun)
}
// 表单请求
Vue.prototype.$axiosfrom = axiosfrom
Vue.axiosfrom = axiosfrom

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
向当前style sheet中插入一个新的style实现方法
Apr 01 Javascript
javaScript 动态访问JSon元素示例代码
Aug 30 Javascript
jQuery filter函数使用方法
May 19 Javascript
js实现选中复选框文字变色的方法
Aug 14 Javascript
jQuery密码强度检测插件passwordStrength用法实例分析
Oct 30 Javascript
js确认框confirm()用法实例详解
Jan 07 Javascript
JSONP跨域请求
Mar 02 Javascript
详解使用webpack打包编写一个vue-toast插件
Nov 08 Javascript
JavaScript对JSON数组简单排序操作示例
Jan 31 Javascript
vue动态注册组件实例代码详解
May 30 Javascript
如何在项目中使用log4.js的方法步骤
Jul 16 Javascript
Vue + element 实现多选框组并保存已选id集合的示例代码
Jun 03 Javascript
Angular8 Http拦截器简单使用教程
Aug 20 #Javascript
vue实现axios图片上传功能
Aug 20 #Javascript
扫微信小程序码实现网站登陆实现解析
Aug 20 #Javascript
vue+element-ui+axios实现图片上传
Aug 20 #Javascript
vue element upload实现图片本地预览
Aug 20 #Javascript
JS中的算法与数据结构之集合(Set)实例详解
Aug 20 #Javascript
Vue + Element UI图片上传控件使用详解
Aug 20 #Javascript
You might like
雄兵连:天使彦天使彦为爱折翼,彦和炙心同时念动的誓言!
2020/03/02 国漫
PHP批量修改文件名称的方法分析
2017/02/27 PHP
Laravel框架分页实现方法分析
2018/06/12 PHP
CheckBox 如何实现全选?
2006/06/23 Javascript
DEFER怎么用?
2006/07/01 Javascript
ajax异步刷新实现更新数据库
2012/12/03 Javascript
开发 Internet Explorer 右键功能表(ContextMenu)
2013/07/03 Javascript
使用JS读秒使用示例
2013/09/21 Javascript
javascript中String对象的slice()方法分析
2014/12/20 Javascript
浅析Bootstrap缩略图组件与警示框组件
2016/04/29 Javascript
json对象转为字符串,当做参数传递时加密解密的实现方法
2016/06/29 Javascript
JS实现禁止鼠标右键的功能
2016/10/15 Javascript
vue2.0获取自定义属性的值
2017/03/28 Javascript
vue addRoutes实现动态权限路由菜单的示例
2018/05/15 Javascript
Nodejs使用Mongodb存储与提供后端CRD服务详解
2018/09/04 NodeJs
jQuery实现点击图标div循环放大缩小功能
2018/09/30 jQuery
Angular value与ngValue区别详解
2019/11/27 Javascript
JavaScript实现英语单词题库
2019/12/24 Javascript
浅谈vue的第一个commit分析
2020/06/08 Javascript
Python+Selenium自动化实现分页(pagination)处理
2017/03/31 Python
Python实现单词翻译功能
2017/06/06 Python
python机器学习理论与实战(四)逻辑回归
2018/01/19 Python
python Celery定时任务的示例
2018/03/13 Python
解决pandas read_csv 读取中文列标题文件报错的问题
2018/06/15 Python
python爬虫URL重试机制的实现方法(python2.7以及python3.5)
2018/12/18 Python
Python使用POP3和SMTP协议收发邮件的示例代码
2019/04/16 Python
浅析PyTorch中nn.Module的使用
2019/08/18 Python
flask 实现token机制的示例代码
2019/11/07 Python
css3 border-image使用说明
2010/06/23 HTML / CSS
大学生冰淇淋店商业计划书
2014/01/14 职场文书
活动策划求职信模板
2014/04/21 职场文书
党支部综合考察材料
2014/05/19 职场文书
学生抄作业检讨书(2篇)
2014/10/17 职场文书
如何写贫困证明申请书
2014/10/29 职场文书
2015最新婚礼司仪主持词
2015/06/30 职场文书
会议主持词结束语
2015/07/03 职场文书