位置: 编程技术 - 正文

Vue的移动端多图上传插件vue-easy-uploader的示例代码(vue移动端图片预览)

编辑:rootadmin

推荐整理分享Vue的移动端多图上传插件vue-easy-uploader的示例代码(vue移动端图片预览),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:vue移动端图表,vue怎么让图片多停留,vue移动端图片预览,vue图片多选,vue移动端上传多张图片,vue移动端图片预览,vue多图上传,vue多图上传,内容如对您有帮助,希望把文章链接给更多的朋友!

前言

这段时间赶项目,需要用到多文件上传,用Vue进行前端项目开发。在网上找了不少插件,都不是十分满意,有的使用起来繁琐,有的不能适应本项目。就打算自己折腾一下,写一个Vue的上传插件,一劳永逸,以后可以直接使用。

目前vue-easy-uploader已上传到GitHub和NPM,使用起来方便简单,不需要繁琐的配置即可投入生产,不过需要后端配合,实现上传接口。

本项目GitHub地址: 多文件上传 上传图片预览 上传状态监测 删除指定图片 清空图片 重新上传

后期版本迭代将不限于图片,往通用文件上传进行改进。

先看看上传插件使用时候的效果图:

目录结构

文件解析

index.js

这是插件的主入口文件,注册了全局的上传组件和状态管理,使用时只需要在项目入口文件(一般是main.js)中加入以下代码即可引入此插件:

store.js

此文件为状态管理配置文件,主要包含三个state:

针对每个state都有自己的mutation,用于改变state,规范上mutation都需要使用大写字母加下划线的形式,本人习惯使用小写字母,不过都不是原则上的问题。

Vue的移动端多图上传插件vue-easy-uploader的示例代码(vue移动端图片预览)

最重要的一个state是img_status,用于监视图片上传的状态。包括以下几个状态:

在组件中可以通过改变上传状态实现文件的上传,同时也可以监听上传状态的变化而执行回调。如:

上述代码中,使用upload方法更新了上传状态,让图片开始执行上传操作,使用watch进行上传状态的监视,当上传完成(img_status状态变为finished),执行回调函数submit。

源文件如下:

uploader.vue

先看源代码(为了节省空间,未贴出style部分的代码):

以上代码中有一些注释序号,是此插件设计的主要思路,其他代码都比较容易理解,分别说下

① 选择文件后执行,img_status状态变为selected。② 将带上传的图片文件转化为Base格式,用于缩略图显示。③ 创建一个表单对象,用于存储待上传的文件。④ 注意这里的name属性值,暂时写死,后面设计打算从组件中指定name属性,如果是多文件的话,name属性的数组序号从0开始递增。⑤ 未依赖任何Ajax请求插件,使用原生的XMLHttpRequest对象创建请求。⑥ 存储上传成功后服务器返回的上传路径。⑦ 检测上传状态,当在使用此插件时将img_status的状态设置为uploading时执行上传操作。

使用

参考本项目的GItHub和NPM。

注意

使用此插件时,需要与后端约定返回的数据格式,如下:

预览如下:

返回的是一个上传后的路径数组,包括error和url字段,每个文件有自己的上传状态,当error为0的时候为上传成功,并返回上传后的路径url

改进

后续版本打算进行如下改进

把表单的name属性名称通过组件传递。 自定义上传成功后服务器响应的数据格式,比如自定义error的名称和其值所表示的状态。 支持其他类型文件的上传,可以在组件中自行制定上传的文件类型,及其预览方式。

标签: vue移动端图片预览

本文链接地址:https://www.jiuchutong.com/biancheng/378910.html 转载请保留说明!

上一篇:vue实现商城购物车功能(基于vue的购物系统)

下一篇:vue实现商城上货组件简易版(vue购物商城)

  • 动态市盈率与静态市盈率区别百度百科
  • 吊车租赁有限公司
  • 固定资产报废处置收入要交增值税吗
  • 快递费属于哪个商品编码
  • 高铁票抵扣进项税
  • 非居民企业所得税税率10%
  • 纳税人如何办理纳税申报流程
  • 非财政拨款结余是什么科目
  • 生产单位车间设计费应该计入什么科目?
  • 环保公司开具发票怎么开
  • 购置股权账务处理流程
  • 个体工商户怎么注册
  • 刷卡手续费可以开经纪代理服务费吗
  • 以前工会是没有公章的吗
  • 供应商不开票,还告我司不付款
  • 红字发票账务处理摘要
  • 装修行业属于什么行业分类
  • 交防伪税控技术怎么交
  • 园林绿化公司购入剪刀怎么做会计分录
  • 买卖投资证券基金怎么进行财税处理?
  • 房产税征收范围包括商铺吗
  • 技术服务费收入属于提供劳务收入吗
  • 发票过期作废不了怎么办
  • 加工费月底需要全部结转吗
  • 货物销售价比采购价高
  • 凭证出现错误如何解决
  • 外经证金额没开完需要核销吗
  • 车辆购置税通过应交税费吗
  • 垃圾处理站利润
  • 个体户怎
  • 评标费由谁支付
  • 没有走公户的发票费用怎么做账
  • 固定资产改扩建过程中,发生的人工费用
  • 每季度预缴所得税怎么算
  • 资产减值损失的科目编码
  • 不动产经营租赁包括哪些内容
  • 银行提取现金会计等式
  • 内部审计类型分为哪几种
  • 弗拉维亚王朝
  • 汽车运输企业的实际成本计算单位是
  • 魅族路由器mini padavan
  • 若依前后端分离做的系统
  • vue项目使用rem
  • 固定资产明细账登记
  • promise歌曲
  • 酒店客房成本构成
  • 增值税的纳税时间是多久
  • 毕业设计2022年幼儿园
  • thinkphp用户token
  • thinkphp 多表查询
  • 业务招待费包括哪些内容和费用
  • 个人帮公司代持股份
  • 建筑业营改增前后区别
  • PostgreSQL教程(十):性能提升技巧
  • 企业所得税的计提
  • 个税是指怎样的税金
  • 营改增后,建筑行业与供应商签合同才怎样签没风险?
  • 生产部的管理人员算什么费用
  • 固定资产处置当月需要计提折旧吗
  • 外经证预缴税款网上申报
  • 补贴费用申请书怎么写
  • 股东分红需要
  • 会计账簿按外表形式分
  • 工业企业接受捐赠收入计入
  • windows7录音怎么录
  • win7如何创建新桌面
  • imjpmig是什么进程
  • rundll32.exe是什么程序
  • linux groupmod命令参数及用法详解(linux修改组信息命令)
  • 怎么激活win7旗舰版系统
  • linux ntp查看
  • perl 文件
  • cocos2dx schedule
  • vue alain
  • node.js开发实战详解
  • django的url
  • bootstrap需要学多久
  • 开发商代收代缴电费能开发票吗
  • 税务文书保存期限分几类
  • 在江西税务网交医保流程
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设