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开发之三数组对象实例介绍
Nov 12 Javascript
JS函数重载的解决方案
May 13 Javascript
Javascript中prototype属性实现给内置对象添加新的方法
May 14 Javascript
jQuery实现首页图片淡入淡出效果的方法
Jun 10 Javascript
js实现表单检测及表单提示的方法
Aug 14 Javascript
谈谈JavaScript类型系统之Math
Jan 06 Javascript
jQuery ajax方法传递中文时出现中文乱码的解决方法
Jul 25 Javascript
jQuery多级联动下拉插件chained用法示例
Aug 20 Javascript
jQuery中Nicescroll滚动条插件的用法
Nov 10 Javascript
JS实现简单抖动效果
Jun 01 Javascript
JS实现长图上下滚动效果
Mar 19 Javascript
详解Webpack4多页应用打包方案
Jul 16 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
fleaphp crud操作之find函数的使用方法
2011/04/23 PHP
PHP中模拟链表和链表的基本操作示例
2016/02/27 PHP
javascript indexOf函数使用说明
2008/07/03 Javascript
js活用事件触发对象动作
2008/08/10 Javascript
for 循环性能比较 提高for循环的效率
2009/03/19 Javascript
JavaScript 高级篇之函数 (四)
2012/04/07 Javascript
Iframe 自动适应页面的高度示例代码
2014/02/26 Javascript
js读取被点击次数的简单实例(从数据库中读取)
2014/03/07 Javascript
JavaScript计时器示例分析
2015/02/05 Javascript
JavaScript原生对象之Date对象的属性和方法详解
2015/03/13 Javascript
javascript笛卡尔积算法实现方法
2015/04/08 Javascript
js图片轮播效果实现代码
2020/04/18 Javascript
JavaScript简单获取页面图片原始尺寸的方法
2016/06/21 Javascript
Vue.directive自定义指令的使用详解
2017/03/10 Javascript
详解Vue.js分发之作用域槽
2017/06/13 Javascript
react-router4 配合webpack require.ensure 实现异步加载的示例
2018/01/18 Javascript
JQuery实现简单的复选框树形结构图示例【附源码下载】
2019/07/16 jQuery
Python 2.7.x 和 3.x 版本的重要区别小结
2014/11/28 Python
Python中类型关系和继承关系实例详解
2015/05/25 Python
Python利用带权重随机数解决抽奖和游戏爆装备问题
2016/06/16 Python
基于ID3决策树算法的实现(Python版)
2017/05/31 Python
不同版本中Python matplotlib.pyplot.draw()界面绘制异常问题的解决
2017/09/24 Python
python里使用正则表达式的组嵌套实例详解
2017/10/24 Python
Python实现对字典分别按键(key)和值(value)进行排序的方法分析
2018/12/19 Python
解决使用PyCharm时无法启动控制台的问题
2019/01/19 Python
使用Python3+PyQT5+Pyserial 实现简单的串口工具方法
2019/02/13 Python
浅谈python中get pass用法
2019/03/19 Python
django表单的Widgets使用详解
2019/07/22 Python
Python3+selenium配置常见报错解决方案
2020/08/28 Python
python 线程的五个状态
2020/09/22 Python
CSS中的字体大小设置属性总结
2016/05/24 HTML / CSS
css3弹性盒子flex实现三栏布局的实现
2020/11/12 HTML / CSS
大学生个人推荐信范文
2013/11/25 职场文书
大学生档案自我鉴定(2篇)
2014/10/14 职场文书
红白喜事主持词
2015/07/06 职场文书
2015年教务主任工作总结
2015/07/22 职场文书