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 相关文章推荐
extJs 常用到的增,删,改,查操作代码
Dec 28 Javascript
用jQuery打造TabPanel效果代码
May 22 Javascript
jquery下实现overlay遮罩层代码
Aug 25 Javascript
JavaScript具有类似Lambda表达式编程能力的代码(改进版)
Sep 14 Javascript
基于jquery中children()与find()的区别介绍
Apr 26 Javascript
jquery图片滚动放大代码分享(1)
Aug 25 Javascript
详解vue2.0组件通信各种情况总结与实例分析
Mar 22 Javascript
详解vue-cli快速构建项目以及引入bootstrap、jq
May 26 Javascript
js学习总结_轮播图之渐隐渐现版(实例讲解)
Jul 17 Javascript
AngularJS 中的数据源的循环输出
Oct 12 Javascript
详解Vue.js项目API、Router配置拆分实践
Mar 16 Javascript
vue中实现点击按钮滚动到页面对应位置的方法(使用c3平滑属性实现)
Dec 29 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 金额数字转换成英文
2010/05/06 PHP
php与java通过socket通信的实现代码
2013/10/21 PHP
详解Yii2 定制表单输入字段的标签和样式
2017/01/04 PHP
JQuery入门——用one()方法绑定事件处理函数(仅触发一次)
2013/02/05 Javascript
Javascript设置对象的ReadOnly属性(示例代码)
2013/12/25 Javascript
JQuery.get提交页面不跳转的解决方法
2015/01/13 Javascript
深入理解JavaScript系列(25):设计模式之单例模式详解
2015/03/03 Javascript
分享9个最好用的JavaScript开发工具和代码编辑器
2015/03/24 Javascript
AngularJS基础学习笔记之表达式
2015/05/10 Javascript
js实现点击链接后延迟3秒再跳转的方法
2015/06/05 Javascript
AngularJs Javascript MVC 框架
2016/06/20 Javascript
JavaScript原生编写《飞机大战坦克》游戏完整实例
2017/01/04 Javascript
Android中Okhttp3实现上传多张图片同时传递参数
2017/02/18 Javascript
BootStrap Fileinput上传插件使用实例代码
2017/07/28 Javascript
微信小程序实现美团菜单
2018/06/06 Javascript
详解在React项目中安装并使用Less(用法总结)
2019/03/18 Javascript
[01:10:58]Spirit vs NB Supermajor小组赛 A组败者组决赛 BO3 第二场 6.2
2018/06/03 DOTA
[02:05:03]完美世界DOTA2联赛循环赛 LBZS VS Matador BO2 10.28
2020/10/28 DOTA
Python操作csv文件实例详解
2017/07/31 Python
Python中用post、get方式提交数据的方法示例
2017/09/22 Python
django基础学习之send_mail功能
2019/08/07 Python
python实现发送form-data数据的方法详解
2019/09/27 Python
Python高级特性之闭包与装饰器实例详解
2019/11/19 Python
Python定义函数时参数有默认值问题解决
2019/12/19 Python
打包PyQt5应用时的注意事项
2020/02/14 Python
Pytorch之Tensor和Numpy之间的转换的实现方法
2020/09/03 Python
详解numpy.ndarray.reshape()函数的参数问题
2020/10/13 Python
Darphin迪梵官网: 来自巴黎,植物和精油调制的护肤品牌
2016/10/11 全球购物
英国在线房屋中介网站:Yopa
2018/01/09 全球购物
Hanro官网:奢华男士和女士内衣、睡衣和家居服
2018/10/25 全球购物
人力资源专业推荐信
2013/11/29 职场文书
乡镇领导班子批评与自我批评材料
2014/09/23 职场文书
迁户口计划生育证明
2014/10/19 职场文书
党章学习心得体会2016
2016/01/14 职场文书
制作能在nginx和IIS中使用的ssl证书
2021/06/21 Servers
Python基本数据类型之字符串str
2021/07/21 Python