vue.js 上传图片实例代码


Posted in Javascript onJune 22, 2017

最近爱上了用vue.js做前端,昨天用vue上传图片时遇到了问题,最后半天时间终于摸索出来,我将相关部分的代码贴出来。

前端部分

<div class="form-group">
    <label>背景图</label>
    <input type="file" class="form-control" @change="onFileChange">
 </div>
<div class="form-group" v-if="image">
    <label>背景图预览</label>
    ![](image)
</div>

vue.js部分

在methods里添加

onFileChange(e) {
  var files = e.target.files || e.dataTransfer.files;
  if (!files.length)
   return;
   this.createImage(files[0]);
  },
createImage(file) {
  var image = new Image();
  var reader = new FileReader();
  var vm = this;

  reader.onload = (e) => {
    vm.image = e.target.result;
  };
    reader.readAsDataURL(file);
},

那么提交时如何获取呢?

在提交的方法里,通过 this.image 即可,获取的图片格式是图片流格式,以data:image开头。

如何在后端(我用php)获取呢?

直接贴代码

$bg = $request->get('image');//获取图片流
$url = explode(',',$bg);
$filename = md5(time().str_random(8)).'.png';//自定义图片名
$filepath = public_path('image').'/'.$filename;//图片存储路径
$bgurl = '/image/'.$filename;//图片url ,具体看自己后台环境,我用的是laravel
file_put_contents($filepath, base64_decode($url[1]));//保存图片到自定义的路径

将$bgurl保存在数据库即可。

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

Javascript 相关文章推荐
javascript+css 网页每次加载不同样式的实现方法
Dec 27 Javascript
Javascript 面向对象 重载
May 13 Javascript
用Javascript评估用户输入密码的强度实现代码
Nov 30 Javascript
JQuery操作iframe父页面与子页面的元素与方法(实例讲解)
Nov 20 Javascript
js动态改变select选择变更option的index值示例
Jul 10 Javascript
基于jQuery的Web上传插件Uploadify使用示例
May 19 Javascript
浅谈$('div a') 与$('div&gt;a')的区别
Jul 18 Javascript
关于动态执行代码(js的Eval)实例详解
Aug 15 Javascript
Angular1.x复杂指令实例详解
Mar 01 Javascript
bootstrap轮播模板使用方法详解
Nov 17 Javascript
用jquery获取select标签中选中的option值及文本的示例
Jan 25 jQuery
详解elementui之el-image-viewer(图片查看器)
Aug 30 Javascript
详解Angular 开发环境搭建
Jun 22 #Javascript
详解Angular2组件之间如何通信
Jun 22 #Javascript
Angular2 父子组件数据通信实例
Jun 22 #Javascript
详解Angular之constructor和ngOnInit差异及适用场景
Jun 22 #Javascript
详解Angular 中 ngOnInit 和 constructor 使用场景
Jun 22 #Javascript
文本溢出插件jquery.dotdotdot.js使用方法详解
Jun 22 #jQuery
详解Vue 2.0封装axios笔记
Jun 22 #Javascript
You might like
php中文件上传的安全问题
2006/10/09 PHP
php中支持多种编码的中文字符串截取函数!
2007/03/20 PHP
Thinkphp的volist标签嵌套循环使用教程
2014/07/08 PHP
PHP基于GD库实现的生成图片缩略图函数示例
2017/07/05 PHP
JavaScript arguments 多参传值函数
2010/10/24 Javascript
eval与window.eval的差别分析
2011/03/17 Javascript
js中的cookie的读写操作示例详解
2014/04/17 Javascript
Javascript 创建类并动态添加属性及方法的简单实现
2016/10/20 Javascript
JavaScript在form表单中使用button按钮实现submit提交方法
2017/01/23 Javascript
微信小程序ajax实现请求服务器数据及模版遍历数据功能示例
2017/12/15 Javascript
在Vue中使用Compass的方法
2018/03/02 Javascript
vue使用技巧及vue项目中遇到的问题
2018/06/04 Javascript
VUE2.0+ElementUI2.0表格el-table循环动态列渲染的写法详解
2018/11/30 Javascript
vue实现直播间点赞飘心效果的示例代码
2019/09/20 Javascript
适合前端Vue开发童鞋的跨平台Weex的使用详解
2019/10/16 Javascript
Python网络编程详解
2017/10/31 Python
Python使用一行代码获取上个月是几月
2018/08/30 Python
总结Python图形用户界面和游戏开发知识点
2019/05/22 Python
Python使用正则表达式分割字符串的实现方法
2019/07/16 Python
Python 实现数据结构-循环队列的操作方法
2019/07/17 Python
Django基础知识 URL路由系统详解
2019/07/18 Python
Python Matplotlib简易教程(小白教程)
2020/07/28 Python
python 多线程爬取壁纸网站的示例
2021/02/20 Python
HTML5新增加标签和功能概述
2016/09/05 HTML / CSS
全球异乡人的跨境社交电商平台:Kouhigh口嗨网
2020/07/24 全球购物
师范应届生教师求职信
2013/11/05 职场文书
学校安全教育制度
2014/01/31 职场文书
关于中国梦的演讲稿
2014/04/23 职场文书
党员争先创优承诺书
2015/01/20 职场文书
倡议书范文大全
2015/04/28 职场文书
2015年信息中心工作总结
2015/05/25 职场文书
西游降魔篇观后感
2015/06/15 职场文书
2016年小学生新年寄语
2015/08/18 职场文书
小学生班干部竞选稿
2015/11/20 职场文书
详解PHP Swoole与TCP三次握手
2021/05/27 PHP
HTML5页面打开微信小程序功能实现
2022/09/23 HTML / CSS