UNPKG

4.75 kBMarkdownView Raw
1### Install
2
3npm install @forzoom/uploader
4
5### Usage
6
7#### WechatUploader
8
9![Example](assets/img1.png)
10
11大致上存在四种元素,分别是“容器”,“图片元素”,“添加按钮”,“图片容器”
12嵌套结构为
13
14 1. “容器”
15 2. “图片容器”
16 3. “图片元素”
17 3. 其他元素
18 2. “添加按钮”
19
20上图中,“咖啡”图片实际上有一个“图片容器”和一个“图片元素”组成
21第三个是一个“添加按钮”
22点击添加按钮能够调用JSSDK中的图片上传逻辑
23
24__根据需要,可以使用Props中的样式内容修改不同元素的样式__
25
26##### Props
27
28|名称|默认|说明|
29|---|---|---|
30|size|1|允许最大上传图片数量|
31|canModify|true|是否允许修改|
32|containerClass|\{\}|“容器”元素样式类|
33|containerStyle|\{\}|“容器”元素样式|
34|imageClass|\{\}|每个“图片元素”样式类|
35|imageStyle|\{\}|每个“图片元素”样式|
36|requestClass|\{\}|“添加按钮”样式类|
37|requestStyle|\{\}|“添加按钮”样式|
38|imageWrapClass|\{\}|“图片容器”样式类|
39|imageWrapStyle|\{\}|“图片容器”样式|
40|useWechatPreview|true|是否使用微信JSSDK预览|
41|lazyload|false|是否使用vue-lazyload|
42
43##### 自定义事件
44
45|名称|参数|说明|
46|---|---|---|
47|load|无|图片上传到微信服务器开始|
48|finish|无|图片上传到微信服务器结束|
49|add| \{ localId, serverId, \} |有图片增加|
50|remove|index (被删除图片位置)|有图片被删除|
51|click|index (被点击图片位置)|当正在显示的图片被点击|
52|choose|sourceType|图片来源|
53
54##### 函数
55
56|名称|参数|说明|
57|---|---|---|
58|request|无|发起图片上传|
59|removeAll|无|删除所有图片|
60|setImages|无|设置默认显示的图片|
61|getImages|无|获得所有图片|
62
63##### 示例
64
65###### WechatUploader.setImages
66
67设置uploader中默认的图片内容(注意,如果uploader被销毁的情况下,设置的内容自然也会消失)
68
69__html__
70
71```html
72 <!-- size="4": 显示多少个图片 -->
73 <!-- can-modify="false": 不允许修改,只允许查看 -->
74 <WechatUploader
75 ref="uploader"
76 :size="4"
77 :can-modify="true">
78 </WechatUploader>
79```
80
81__script__
82
83```javascript
84 this.$refs.uploader.setImages([
85 {
86 image: '...', // 可以是url或者localId
87 serverId: '...', // 可以不传入
88 },
89 ]);
90```
91
92###### WechatUploader.getImages
93
94获得uploader中当前的图片内容
95
96```javascript
97 const images = this.$refs.uploader.getImages();
98
99 // 结果是
100 [
101 {
102 image: '...',
103 serverId: '...',
104 },
105 ]
106```
107
108### Roadmap
109
1101. image之间添加间距
111
112### Changelog
113
114#### v0.0.2
115
1161. export default Uploader 改为 export {Uploader, WechatUploader}
117
118#### v0.0.3
119
1201. add/remove添加boolean返回值
121
122#### v0.0.4
123
1241. WechatUploader中setImages(images: Array<image>)函数修改为setImages(data: Array<{image, serverId}>)
1252. WechatUploader中getImages: Array<image>函数修改为getImages: Array<{image, serverId}>
126
127#### 0.0.21
128
1291. 删除add事件中的res,添加choose事件
130
131### Version
132
133#### v0.0.1
134
1351. @request() 请求一张图片
1361. @click(index) 点击了某张图片
1371. @remove(index) 删除了某张图片
1381. add(image) 添加一张图片
1391. remove(index) 删除某张图片
1401. getImages(): Array<image> 获得所有的图片
1411. setImages(images: Array<image>) 设置所有的图片
1421. 样式上
143 1. 强制70px宽度
144 1. icon使用before和after生成
145
146#### v0.0.2
147
1481. 添加@add(image)事件
1491. remove(index)函数调用将触发@remove(index)事件
1501. 添加wechat-uploader.js
1511. 图片上传将触发@load和@finish事件
152
153#### 0.0.3
154
1551. 样式代码简单优化
1561. remove(index)需要对index进行处理,例如是否大于0。添加返回值
1571. add(image)需要判断当前的size是否已满。添加返回值
158
159#### 0.0.4
160
1611. 修复WechatUploader中setImages/getImages的参数可能导致的不正确问题
162
163#### 0.0.5
164
1651. WechatUploader提供preview
1661. 添加canModify控制部分按钮的显示
167
168#### 0.0.6
169
1701. 修复WechatUploader的setImages逻辑错误
171
172#### 0.0.7
173
1741. request组件和container组件的样式允许部分自定义
175
176#### 0.0.8
177
1781. 修复错误
179
180#### 0.0.9
181
1821. 添加 removeAll / getCount / getSize 函数
183
184#### 0.0.10
185
1861. 添加新函数,优化样式
187
188#### 0.0.11
189
1901. 优化样式
191
192#### 0.0.12
193
1941. 添加props: imageStyle/imageClass
195
196#### 0.0.13
197
1981. 完善文档
199
200#### v0.0.14
201
2021. 修复错误
203
204#### v0.0.15
205
2061. 添加props,mageWrapClass和imageWrapStyle
207
208#### v0.0.16
209
2101. 添加prop: lazyload
211
212#### v0.0.17
213
2141. 修复微信预览黑屏的问题
215
216#### v0.0.18
217
2181. 修复preview的错误
219
220#### 0.0.20
221
2221. add事件添加参数res,变成add(image, serverId, res)
223
224#### 0.0.21
225
2261. 回滚0.0.20功能,添加choose(sourceType)事件
\No newline at end of file