vux-uploader 图片上传组件
1.网址:https://github.com/greedying/vux-uploader
2.安装
npm install vux-uploader --save npm install --save-dev babel-preset-es2015
.babelrc
{
"presets": [
["env", {
"modules": false,
"targets": {
"browsers": ["> 1%", "last 2 versions", "not ie <= 8"]
}
}],
"es2015",
"stage-2"
],
"plugins": ["transform-runtime"],
"env": {
"test": {
"presets": ["env", "es2015", "stage-2"],
"plugins": ["istanbul"]
}
}
}
3.使用
// 引入组件
import Uploader from 'vux-uploader' // 子组件
export default {
...
components: {
...
Uploader,
...
}
...
} // 使用组件
<uploader
:max="varmax"
:images="images"
:handle-click="true"
:show-header="false"
:readonly="true"
:upload-url="uploadUrl"
name="img"
:params="params"
size="small"
@preview="previewMethod"
@add-image="addImageMethod"
@remove-image="removeImageMethod"
></uploader>
参数说明:
images
类型: Array
默认值: [],空数组
含义: 图片数组,格式为 [ { url: '/url/of/img.ong' }, ...]
备注: 变量为数组时,数据流为双向,在组件内部改变数组的值影响父组件 max
类型: Number
默认值: 1
含义: 图片最大张数
备注: 图片达到max值时,新增按钮消失 showHeader
类型: Boolean
默认值: true
含义: 是否显示头部
备注: 控制整个头部的显示 title
类型: String
默认值: 图片上传
含义: 头部的标题
备注: 不显示则留空 showTip
类型: Boolean
默认值: true
含义: 是否显示头部数字部分,即1/3部分
备注: 当showHeader为false时,header整体隐藏,此时本参数无效 readonly
类型: Boolean
默认值: false
含义: 是否只读
备注: 只读时,新增和删除按钮隐藏 handleClick
类型: Boolean
默认值: false
含义: 是否接管新增按钮的点击事件,如果是,点击新增按钮不再自动出现选择图片界面
备注: true时,点击新增按钮,则$emit('add-image'),可以在此事件内进行自定义的选择图片等操作,此后图片的新增、上传、删除都由使用者接管 autoUpload
类型: Boolean
默认值: true
含义: 选择图片后是否自动上传。是,则调用内部上传接口。否,则$emit('upload-image', formData)',formData`为图片内容,用户可监听事件自己上传
备注: handleClick为true时,无法进行图片选择,故此参数无效。此参数为false时,选择图片后,$emit('upload-image', formData)',formData`为图片内容 uploadUrl
类型: String
默认值: ''
含义: 接收上传图片的url
备注: 需要返回如下格式的json字符串,否则请设置autoUpload为false自行上传
{
result: 0,
message: "result不是0时候的错误信息",
data: {
url: "http://image.url.com/image.png"
}
} name
类型: String
默认值: img
含义: 默认上传的时候,图片使用的表单name
备注: 无 params
类型: Object
默认值: null
含义: 上传文件时携带参数
备注: 无 size
类型: String
默认值: normal
含义: 尺寸类型
备注: normal为weui默认尺寸,small为作者定义的小一些的尺寸 capture
类型: String
默认值: ''
含义: input 的capture属性
备注: 可以设置为camera,此时点击新增按钮,部分机型会直接调起相机,注意,各型号手机表现不同,请谨慎使用。handleClick为true时,此属性无效
emit事件说明 add-image
emit时机: 当handleClick参数为true时,点击新增按钮
参数: 无
备注: 无 remove-image
emit时机: 当handleClick参数为true时,点击删除按钮
参数: 无
备注: 当handleClick为false时,点击删除按钮,组件内部删除第一张图片;否则,用户需要监听本事件,并进行相应删除操作 preview
emit时机: 点击任意一张图片的时候
参数: 图片对象,格式为 { url: 'imgUrl' }
备注: 暂时没有实现自动预览功能,如果需要用户监听事件自行实现 upload-image
emit时机: handleClick和autoUpload都为false`时,选择图片
参数: formData,图片内容生成的formData
备注: 可以通过vm.$refs.input获取图片的input元素
.
vux-uploader 图片上传组件的更多相关文章
- vue图片上传组件
前言:很多项目中都需要用到图片上传功能,而其多处使用的要求,为了避免重复造轮子,让我决定花费一些时间去深入了解,最终封装了一个vue的图片上传组件.现将总结再次,希望有帮助. Layout <d ...
- 微信小程序简单封装图片上传组件
微信小程序简单封装图片上传组件 希望自己 "day day up" -----小陶 我从哪里来 在写小程序的时候需要上传图片,个人觉得官方提供的 Uploader 组件不是太好用, ...
- Jquery图片上传组件,支持多文件上传
Jquery图片上传组件,支持多文件上传http://www.jq22.com/jquery-info230jQuery File Upload 是一个Jquery图片上传组件,支持多文件上传.取消. ...
- H5拍照、选择图片上传组件核心
背景 前段时间项目重构,改成SSR的项目,但之前用的图片选择上传组件不支持SSR(server-side-render).遂进行了调研,发现很多的工具.但有的太大,有的使用麻烦,有的不满足使用需求.决 ...
- 基于Node的React图片上传组件实现
写在前面 红旗不倒,誓把JavaScript进行到底!今天介绍我的开源项目 Royal 里的图片上传组件的前后端实现原理(React + Node),花了一些时间,希望对你有所帮助. 前端实现 遵循R ...
- 分享一个react 图片上传组件 支持OSS 七牛云
react-uplod-img 是一个基于 React antd组件的图片上传组件 支持oss qiniu等服务端自定义获取签名,批量上传, 预览, 删除, 排序等功能 需要 react 版本大于 v ...
- 图片上传组件webuploader
前端组件webuploader 当时也是搞了很久参考这种demo,但是没记.现在事后大致总结下.直接上大概代码(我使用asp.net MVC来做的): 执行顺序:(get)Record/Add——A ...
- Fine Uploader文件上传组件
最近在处理后台数据时需要实现文件上传.考虑到对浏览器适配上采用Fine Uploader. Fine Uploader 采用ajax方式实现对文件上传.同时在浏览器中直接支持文件拖拽[对浏览器版本有要 ...
- hbuilder mui uploader图片上传到服务器完整版(ASP.NET)
html布局,比较简单,模仿微信的: <div class="dynamic_images"> <ul> <!--<li><img ...
随机推荐
- ADB相关指令实例详解
1.获取物理设备相关信息: adb devices 2.apk安装 2.1 新的应用(该应用未安装) adb -s 设备序列号 install apk路径 2.2 应用已安装,重安装覆盖 adb -s ...
- OpenCV2:第二章 创建图像并显示
一.简介 相当于在PS中,新建一个画布 二.CvMat类/LPLImage和CvMat结构体 参考: OpenCV2:第一章 图像表示 三.create() Mat m(2,2,CV_8UC3); m ...
- Linux OOM-killer 内存不足时kill高内存进程的策略
OOM_killer是Linux自我保护的方式,当内存不足时不至于出现太严重问题,有点壮士断腕的意味 在kernel 2.6,内存不足将唤醒oom_killer,挑出/proc/<pid> ...
- 让idea调试不进入class文件中去
- TWaver可视化编辑器的前世今生(四)电力 云计算 数据中心
插播一则广告(长期有效) TWaver需要在武汉招JavaScript工程师若干 要求:对前端技术(JavasScript.HTML.CSS),对可视化技术(Canvas.WebGL)有浓厚的兴趣基础 ...
- 利用springboot创建多模块项目
本文旨在用最通俗的语言讲述最枯燥的基本知识 最近要对一个不大不小的项目进行重构,用spring觉得太过于繁琐,用cloud又有觉得过于庞大,维护的人手不够:权衡之下,最终选了springboot作为架 ...
- 前端基础之CSS_1
摘要 CSS(层叠样式表)的三种设置方法 基本选择器 组合选择器 属性选择器 分组与嵌套 伪类选择器 伪元素选择器 选择器的优先级 一些样式的设置(字体.文本.背景.边框) display属性设置 0 ...
- 「LibreOJ β Round #3」绯色 IOI(抵达)
[题解] 我们可以发现叶子节点的关联点一定是它的父亲节点,那么我们dfs一遍就可以求出所有节点的关联点,或者判断出无解. 对于每个点i,它的关联点u的危险度肯定比它连接的其他点vi的危险度小,我们从u ...
- LeetCode刷题笔记-递归-路径总和
题目描述: 给定一个二叉树和一个目标和,判断该树中是否存在根节点到叶子节点的路径,这条路径上所有节点值相加等于目标和. 说明: 叶子节点是指没有子节点的节点. 示例: 给定如下二叉树,以及目标和 su ...
- Python+selenium鼠标、键盘事件
鼠标操作 现在的Web产品提供了丰富的鼠标交互方式,例如鼠标右击.双击.悬停.甚至是鼠标拖动等功能,在Webdriver中,将这些关于鼠标操作的方法封装在ActionChains类提供. 1.鼠标右击 ...