0.3.0 • Published 3 years ago

@forzoom/uploader v0.3.0

Weekly downloads
40
License
MIT
Repository
github
Last release
3 years ago

Install

npm install @forzoom/uploader

Desc

提供三种组件 1. Uploader 2. WechatUploader 3. InputUploader

Usage

import Vue from 'vue';
import Uploader from '@forzoom/uploader';
Vue.use(Uploader, {
	.. // 额外配置
})

WechatUploader

Example

大致上存在四种元素,分别是“容器”,“图片元素”,“添加按钮”,“图片容器” 嵌套结构为

1. “容器”
    2. “图片容器”
	    3. “图片元素”
	    3. 其他元素
    2. “添加按钮”

上图中,“咖啡”图片实际上有一个“图片容器”和一个“图片元素”组成 第三个是一个“添加按钮” 点击添加按钮能够调用JSSDK中的图片上传逻辑

根据需要,可以使用Props中的样式内容修改不同元素的样式

Props
名称默认说明
size1允许最大上传图片数量
canModifytrue是否允许修改
containerClass{}“容器”元素样式类
containerStyle{}“容器”元素样式
imageClass{}每个“图片元素”样式类
imageStyle{}每个“图片元素”样式
requestClass{}“添加按钮”样式类
requestStyle{}“添加按钮”样式
imageWrapClass{}“图片容器”样式类
imageWrapStyle{}“图片容器”样式
useWechatPreviewtrue是否使用微信JSSDK预览
lazyloadfalse是否使用vue-lazyload
Events
名称参数说明
load图片上传到微信服务器开始
finish图片上传到微信服务器结束
add{ localId, serverId, }有图片增加
removeindex (被删除图片位置)有图片被删除
clickindex (被点击图片位置)当正在显示的图片被点击
choose{ localIds }图片来源
startRequestrequest开始
endRequestrequest结束
error错误信息发生错误
load

图片开始上传到微信服务器,一般配置finish事件使用

<WechatUploader @load="onLoad">
</WechatUploader>

export default {
	methods: {
		onLoad() {
			// 展示加载动画
		},
	},
};

finish

图片上传到微信服务器结束,一般配置load事件使用

<WechatUploader @finish="onFinish">
</WechatUploader>

export default {
	methods: {
		onFinish() {
			// 隐藏加载动画
		},
	},
};
函数
名称参数说明
request发起图片上传
removeAll删除所有图片
setImages设置默认显示的图片
getImages获得所有图片
Example
WechatUploader.setImages

设置uploader中默认的图片内容(注意,如果uploader被销毁的情况下,设置的内容自然也会消失)

html

<!-- size="4": 显示多少个图片 -->
<!-- can-modify="false": 不允许修改,只允许查看 -->
<WechatUploader
	ref="uploader"
	:size="4"
	:can-modify="true">
</WechatUploader>

script

this.$refs.uploader.setImages([
	{
		image: '...', // 可以是url或者localId
		serverId: '...', // 可以不传入
	},
]);
WechatUploader.getImages

获得uploader中当前的图片内容

const images = this.$refs.uploader.getImages();

// 结果是
[
	{
		image: '...',
		serverId: '...',
	},
]

Types

// 表示<Uploader>组件的interface
export interface UploaderComponent {..}
// 表示<WechatUploader>组件的interface
export interface WechatUploaderComponent {..}
// 表示<InputUploader>组件的interface
export interface InputUploaderComponent {..}

ImageInfo

图片信息

  1. key: 文件在后端的标识符
  2. url: 表示图片存储在网络上的地址。
  3. image: 表示可以用来展示的图片内容,一般是 WechatUploader。
  4. mode: 'input' | 'wechat'
  5. localId: 微信jssdk中的localId
  6. serverId: 微信jssdk中的serverId
  7. file: 图片文件
  8. objectUrl: 有file转换而成的objectUrl,单独使用一个变量是因为需要调用revoke方法进行资源释放。

Roadmap

  1. image之间添加间距
  2. 更新rollup版本
  3. 目前会忽略chooseImage中的cancel和error信息
  4. transformLocalImageData是否没有用了
0.3.0

3 years ago

0.3.0-rc4

3 years ago

0.3.0-rc3

3 years ago

0.3.0-rc2

3 years ago

0.3.0-rc0

3 years ago

0.3.0-rc1

3 years ago

0.2.3

3 years ago

0.2.2

3 years ago

0.2.1

4 years ago

0.2.0

4 years ago

0.1.8

4 years ago

0.1.7

5 years ago

0.1.6

5 years ago

0.1.5

5 years ago

0.1.4

5 years ago

0.1.3

5 years ago

0.1.2-1

5 years ago

0.1.2

5 years ago

0.1.1-1

5 years ago

0.1.1-0

5 years ago

0.1.1

5 years ago

0.1.0

5 years ago

0.0.21

6 years ago

0.0.20

6 years ago

0.0.19

6 years ago

0.0.18

6 years ago

0.0.17

7 years ago

0.0.16

7 years ago

0.0.15

7 years ago

0.0.14

7 years ago

0.0.13

7 years ago

0.0.12

7 years ago

0.0.11

7 years ago

0.0.10

7 years ago

0.0.9

7 years ago

0.0.8

7 years ago

0.0.7

7 years ago

0.0.6

7 years ago

0.0.5

7 years ago

0.0.4

7 years ago

0.0.3

7 years ago

0.0.2

7 years ago

0.0.1

7 years ago