eoss-ui 0.6.76 → 0.6.78

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (289) hide show
  1. package/lib/button-group.js +30 -8
  2. package/lib/button.js +30 -8
  3. package/lib/calogin.js +263 -241
  4. package/lib/checkbox-group.js +30 -8
  5. package/lib/data-table-form.js +30 -8
  6. package/lib/data-table.js +30 -8
  7. package/lib/date-picker.js +30 -8
  8. package/lib/dialog.js +30 -8
  9. package/lib/eoss-ui.common.js +1699 -1212
  10. package/lib/flow-group.js +30 -8
  11. package/lib/flow-list.js +111 -89
  12. package/lib/flow.js +965 -515
  13. package/lib/form.js +50 -10
  14. package/lib/handle-user.js +30 -8
  15. package/lib/handler.js +30 -8
  16. package/lib/icon.js +30 -8
  17. package/lib/index.js +1 -1
  18. package/lib/input-number.js +30 -8
  19. package/lib/input.js +30 -8
  20. package/lib/login.js +30 -8
  21. package/lib/main.js +373 -332
  22. package/lib/nav.js +30 -8
  23. package/lib/page.js +30 -8
  24. package/lib/pagination.js +30 -8
  25. package/lib/player.js +30 -8
  26. package/lib/qr-code.js +43 -21
  27. package/lib/radio-group.js +30 -8
  28. package/lib/retrial-auth.js +30 -8
  29. package/lib/select-ganged.js +30 -8
  30. package/lib/select.js +30 -8
  31. package/lib/selector-panel.js +30 -8
  32. package/lib/selector.js +30 -8
  33. package/lib/sizer.js +30 -8
  34. package/lib/steps.js +30 -8
  35. package/lib/switch.js +30 -8
  36. package/lib/table-form.js +30 -8
  37. package/lib/tabs.js +30 -8
  38. package/lib/theme-chalk/flow.css +1 -1
  39. package/lib/theme-chalk/form.css +1 -1
  40. package/lib/theme-chalk/index.css +1 -1
  41. package/lib/tips.js +30 -8
  42. package/lib/tree-group.js +30 -8
  43. package/lib/tree.js +30 -8
  44. package/lib/upload.js +30 -8
  45. package/lib/utils/util.js +26 -4
  46. package/lib/wujie.js +30 -8
  47. package/lib/wxlogin.js +30 -8
  48. package/package.json +160 -160
  49. package/packages/button/index.js +5 -5
  50. package/packages/button/src/main.vue +418 -418
  51. package/packages/button-group/index.js +5 -5
  52. package/packages/button-group/src/main.vue +298 -298
  53. package/packages/calendar/index.js +5 -5
  54. package/packages/calogin/index.js +5 -5
  55. package/packages/calogin/src/main.vue +412 -412
  56. package/packages/calogin/src/plugin.js +915 -915
  57. package/packages/card/index.js +5 -5
  58. package/packages/card/src/main.vue +156 -156
  59. package/packages/cascader/index.js +5 -5
  60. package/packages/cascader/src/main.vue +168 -168
  61. package/packages/checkbox-group/index.js +5 -5
  62. package/packages/checkbox-group/src/main.vue +333 -333
  63. package/packages/clients/index.js +5 -5
  64. package/packages/clients/src/main.vue +151 -151
  65. package/packages/data-table/index.js +5 -5
  66. package/packages/data-table/src/children.vue +39 -39
  67. package/packages/data-table/src/column.vue +989 -989
  68. package/packages/data-table/src/main.vue +1822 -1822
  69. package/packages/data-table/src/sizer.vue +195 -195
  70. package/packages/data-table-form/index.js +5 -5
  71. package/packages/data-table-form/src/checkbox.vue +101 -101
  72. package/packages/data-table-form/src/colgroup.vue +17 -17
  73. package/packages/data-table-form/src/main.vue +181 -181
  74. package/packages/data-table-form/src/radio.vue +65 -65
  75. package/packages/data-table-form/src/table.vue +233 -233
  76. package/packages/data-table-form/src/tbody.vue +336 -336
  77. package/packages/data-table-form/src/thead.vue +68 -68
  78. package/packages/date-picker/index.js +5 -5
  79. package/packages/date-picker/src/main.vue +236 -236
  80. package/packages/dialog/index.js +5 -5
  81. package/packages/enable-drag/index.js +5 -5
  82. package/packages/enterprise/index.js +5 -5
  83. package/packages/enterprise/src/main.vue +66 -66
  84. package/packages/error-page/index.js +5 -5
  85. package/packages/error-page/src/main.vue +44 -44
  86. package/packages/flow/index.js +5 -5
  87. package/packages/flow/src/component/Circulate.vue +370 -363
  88. package/packages/flow/src/component/CommonOpinions.vue +364 -346
  89. package/packages/flow/src/component/CustomPreset.vue +322 -322
  90. package/packages/flow/src/component/FileList.vue +99 -99
  91. package/packages/flow/src/component/Preset.vue +255 -255
  92. package/packages/flow/src/component/SendMsg.vue +241 -241
  93. package/packages/flow/src/component/TimeLimit.vue +190 -190
  94. package/packages/flow/src/component/taskUnionExamine.vue +627 -627
  95. package/packages/flow/src/form.vue +121 -121
  96. package/packages/flow/src/freeStartFlow.vue +2843 -2843
  97. package/packages/flow/src/main.vue +3564 -3445
  98. package/packages/flow/src/processForm.vue +1177 -1096
  99. package/packages/flow/src/processReject.vue +294 -294
  100. package/packages/flow/src/reset.vue +906 -905
  101. package/packages/flow/src/startTaskRead.vue +677 -659
  102. package/packages/flow/src/supervise.vue +149 -149
  103. package/packages/flow/src/table.vue +58 -58
  104. package/packages/flow-group/index.js +5 -5
  105. package/packages/flow-group/src/main.vue +688 -688
  106. package/packages/flow-list/index.js +5 -5
  107. package/packages/flow-list/src/main.vue +1770 -1770
  108. package/packages/form/index.js +5 -5
  109. package/packages/form/src/main.vue +3797 -3796
  110. package/packages/form/src/table.vue +1502 -1502
  111. package/packages/handle-user/index.js +5 -5
  112. package/packages/handle-user/src/main.vue +138 -138
  113. package/packages/handler/index.js +5 -5
  114. package/packages/handler/src/main.vue +493 -493
  115. package/packages/icon/index.js +5 -5
  116. package/packages/icon/src/main.vue +101 -101
  117. package/packages/icons/index.js +5 -5
  118. package/packages/icons/src/main.vue +81 -81
  119. package/packages/input/index.js +5 -5
  120. package/packages/input/src/main.vue +356 -356
  121. package/packages/input-number/index.js +5 -5
  122. package/packages/input-number/src/main.vue +106 -106
  123. package/packages/label/index.js +5 -5
  124. package/packages/label/src/main.vue +457 -457
  125. package/packages/layout/index.js +5 -5
  126. package/packages/layout/src/item.vue +152 -152
  127. package/packages/layout/src/main.vue +31 -31
  128. package/packages/login/index.js +5 -5
  129. package/packages/login/src/main.vue +2001 -2001
  130. package/packages/login/src/resetPassword.vue +562 -562
  131. package/packages/main/index.js +5 -5
  132. package/packages/main/src/default/index.vue +6 -5
  133. package/packages/main/src/default/message.vue +249 -249
  134. package/packages/main/src/default/notice.vue +157 -157
  135. package/packages/main/src/default/userinfo.vue +503 -503
  136. package/packages/main/src/main.vue +107 -84
  137. package/packages/main/src/public/online.vue +89 -89
  138. package/packages/main/src/public/search.vue +458 -458
  139. package/packages/main/src/public/settings.vue +221 -221
  140. package/packages/main/src/simplicity/apps.vue +388 -388
  141. package/packages/main/src/simplicity/avatar.vue +82 -82
  142. package/packages/main/src/simplicity/handler.vue +259 -259
  143. package/packages/main/src/simplicity/index.vue +2102 -2099
  144. package/packages/main/src/simplicity/lists.vue +84 -84
  145. package/packages/main/src/simplicity/menu-list.vue +135 -135
  146. package/packages/main/src/simplicity/message.vue +259 -259
  147. package/packages/main/src/simplicity/notice.vue +190 -190
  148. package/packages/main/src/simplicity/router-page.vue +45 -45
  149. package/packages/main/src/simplicity/sub-menu.vue +264 -264
  150. package/packages/main/src/simplicity/user.vue +260 -260
  151. package/packages/main/src/simplicity/userinfo.vue +312 -312
  152. package/packages/menu/index.js +5 -5
  153. package/packages/menu/src/main.vue +584 -584
  154. package/packages/nav/index.js +5 -5
  155. package/packages/nav/src/main.vue +351 -351
  156. package/packages/notify/index.js +5 -5
  157. package/packages/notify/src/main.vue +538 -538
  158. package/packages/page/index.js +5 -5
  159. package/packages/page/src/main.vue +167 -167
  160. package/packages/pagination/index.js +5 -5
  161. package/packages/pagination/src/main.vue +96 -96
  162. package/packages/player/index.js +5 -5
  163. package/packages/player/src/main.vue +194 -194
  164. package/packages/qr-code/index.js +5 -5
  165. package/packages/qr-code/src/main.vue +170 -170
  166. package/packages/radio-group/index.js +6 -6
  167. package/packages/radio-group/src/main.vue +319 -319
  168. package/packages/retrial-auth/index.js +5 -5
  169. package/packages/retrial-auth/src/main.vue +280 -280
  170. package/packages/select/index.js +5 -5
  171. package/packages/select/src/main.vue +778 -778
  172. package/packages/select-ganged/index.js +5 -5
  173. package/packages/select-ganged/src/main.vue +724 -724
  174. package/packages/selector/index.js +5 -5
  175. package/packages/selector/src/main.vue +729 -729
  176. package/packages/selector-panel/index.js +5 -5
  177. package/packages/selector-panel/src/main.vue +1027 -1027
  178. package/packages/selector-panel/src/selection.vue +170 -170
  179. package/packages/selector-panel/src/tree.vue +129 -129
  180. package/packages/sizer/index.js +5 -5
  181. package/packages/sizer/src/main.vue +254 -254
  182. package/packages/steps/index.js +5 -5
  183. package/packages/steps/src/main.vue +181 -181
  184. package/packages/switch/index.js +5 -5
  185. package/packages/switch/src/main.vue +154 -154
  186. package/packages/table-form/index.js +5 -5
  187. package/packages/tabs/index.js +5 -5
  188. package/packages/tabs/src/main.vue +788 -788
  189. package/packages/tabs-panel/index.js +5 -5
  190. package/packages/tabs-panel/src/main.vue +29 -29
  191. package/packages/theme-chalk/lib/flow.css +1 -1
  192. package/packages/theme-chalk/lib/form.css +1 -1
  193. package/packages/theme-chalk/lib/index.css +1 -1
  194. package/packages/theme-chalk/src/base.scss +261 -261
  195. package/packages/theme-chalk/src/button-group.scss +176 -176
  196. package/packages/theme-chalk/src/button.scss +24 -24
  197. package/packages/theme-chalk/src/calendar.scss +113 -113
  198. package/packages/theme-chalk/src/card.scss +99 -99
  199. package/packages/theme-chalk/src/checkbox-group.scss +8 -8
  200. package/packages/theme-chalk/src/clients.scss +87 -87
  201. package/packages/theme-chalk/src/data-table-form.scss +67 -67
  202. package/packages/theme-chalk/src/data-table.scss +293 -293
  203. package/packages/theme-chalk/src/date-picker.scss +7 -7
  204. package/packages/theme-chalk/src/dialog.scss +77 -77
  205. package/packages/theme-chalk/src/enable-drag.scss +181 -181
  206. package/packages/theme-chalk/src/enterprise.scss +5 -5
  207. package/packages/theme-chalk/src/error-page.scss +18 -18
  208. package/packages/theme-chalk/src/flow-group.scss +110 -110
  209. package/packages/theme-chalk/src/flow-list.scss +39 -39
  210. package/packages/theme-chalk/src/flow.scss +348 -343
  211. package/packages/theme-chalk/src/form.scss +499 -496
  212. package/packages/theme-chalk/src/handle-user.scss +40 -40
  213. package/packages/theme-chalk/src/handler.scss +143 -143
  214. package/packages/theme-chalk/src/icon.scss +1792 -1792
  215. package/packages/theme-chalk/src/icons.scss +99 -99
  216. package/packages/theme-chalk/src/input.scss +9 -9
  217. package/packages/theme-chalk/src/label.scss +24 -24
  218. package/packages/theme-chalk/src/layout.scss +46 -46
  219. package/packages/theme-chalk/src/login.scss +984 -984
  220. package/packages/theme-chalk/src/main.scss +663 -663
  221. package/packages/theme-chalk/src/menu.scss +222 -222
  222. package/packages/theme-chalk/src/mixins/color.scss +117 -117
  223. package/packages/theme-chalk/src/nav.scss +111 -111
  224. package/packages/theme-chalk/src/page.scss +3 -3
  225. package/packages/theme-chalk/src/pagination.scss +29 -29
  226. package/packages/theme-chalk/src/player.scss +9 -9
  227. package/packages/theme-chalk/src/qr-code.scss +17 -17
  228. package/packages/theme-chalk/src/radio-group.scss +9 -9
  229. package/packages/theme-chalk/src/retrial-auth.scss +38 -38
  230. package/packages/theme-chalk/src/select-ganged.scss +8 -8
  231. package/packages/theme-chalk/src/select.scss +8 -8
  232. package/packages/theme-chalk/src/selector-panel.scss +204 -204
  233. package/packages/theme-chalk/src/selector.scss +91 -91
  234. package/packages/theme-chalk/src/simplicity.scss +1355 -1355
  235. package/packages/theme-chalk/src/sizer.scss +36 -36
  236. package/packages/theme-chalk/src/steps.scss +88 -88
  237. package/packages/theme-chalk/src/switch.scss +3 -3
  238. package/packages/theme-chalk/src/table-form.scss +1 -1
  239. package/packages/theme-chalk/src/tabs.scss +87 -87
  240. package/packages/theme-chalk/src/tips.scss +7 -7
  241. package/packages/theme-chalk/src/toolbar.scss +179 -179
  242. package/packages/theme-chalk/src/tree-group.scss +72 -72
  243. package/packages/theme-chalk/src/tree.scss +165 -165
  244. package/packages/theme-chalk/src/upload.scss +172 -172
  245. package/packages/theme-chalk/src/wxlogin.scss +3 -3
  246. package/packages/tips/index.js +5 -5
  247. package/packages/tips/src/main.vue +141 -141
  248. package/packages/toolbar/index.js +5 -5
  249. package/packages/toolbar/src/main.vue +430 -430
  250. package/packages/tree/index.js +5 -5
  251. package/packages/tree-group/index.js +5 -5
  252. package/packages/upload/index.js +5 -5
  253. package/packages/upload/src/main.vue +1348 -1348
  254. package/packages/upload/src/picture.js +15 -15
  255. package/packages/wujie/index.js +5 -5
  256. package/packages/wujie/src/main.vue +145 -145
  257. package/packages/wxlogin/index.js +5 -5
  258. package/packages/wxlogin/src/main.vue +128 -128
  259. package/src/config/api.js +294 -294
  260. package/src/config/image.js +2 -2
  261. package/src/index.js +163 -163
  262. package/src/utils/bus.js +3 -3
  263. package/src/utils/date-util.js +312 -312
  264. package/src/utils/http.js +50 -50
  265. package/src/utils/rules.js +18 -18
  266. package/src/utils/store.js +21 -21
  267. package/src/utils/util.js +39 -3
  268. package/src/utils/webSocket.js +107 -107
  269. package/packages/.DS_Store +0 -0
  270. package/packages/autocomplete/.DS_Store +0 -0
  271. package/packages/calogin/.DS_Store +0 -0
  272. package/packages/date-picker/.DS_Store +0 -0
  273. package/packages/date-picker/src/.DS_Store +0 -0
  274. package/packages/flow/.DS_Store +0 -0
  275. package/packages/flow-list/.DS_Store +0 -0
  276. package/packages/form/.DS_Store +0 -0
  277. package/packages/login/.DS_Store +0 -0
  278. package/packages/login/src/IcpItem.vue +0 -66
  279. package/packages/main/.DS_Store +0 -0
  280. package/packages/main/src/.DS_Store +0 -0
  281. package/packages/menu/.DS_Store +0 -0
  282. package/packages/scrollbar/.DS_Store +0 -0
  283. package/packages/select/.DS_Store +0 -0
  284. package/packages/selector/.DS_Store +0 -0
  285. package/packages/selector-panel/.DS_Store +0 -0
  286. package/packages/theme-chalk/src/.DS_Store +0 -0
  287. package/packages/upload/.DS_Store +0 -0
  288. package/src/.DS_Store +0 -0
  289. package/src/utils/.DS_Store +0 -0
@@ -1,170 +1,170 @@
1
- <template>
2
- <div class="es-qrcode-box" id="qrcode" ref="qrcode">
3
- <template v-if="mwidth && mheight">
4
- <img
5
- class="es-qrcode-img"
6
- :width="mwidth"
7
- :height="mheight"
8
- ref="qrcodeImg"
9
- alt="二维码图片"
10
- />
11
- <!-- <img
12
- v-if="logo"
13
- class="es-qrcode-logo"
14
- ref="qrcodeLogo"
15
- :src="logo"
16
- alt="二维码logo"
17
- /> -->
18
- <canvas
19
- :width="mwidth"
20
- :height="mheight"
21
- class="canvas"
22
- ref="canvas"
23
- ></canvas>
24
- </template>
25
- </div>
26
- </template>
27
-
28
- <script>
29
- import util from 'eoss-ui/src/utils/util';
30
- const QRCode = require('qrcode');
31
- export default {
32
- name: 'EsQrCode',
33
- props: {
34
- content: {
35
- type: String,
36
- required: true
37
- },
38
- logo: String,
39
- text: String,
40
- width: {
41
- type: Number,
42
- default: 300
43
- },
44
- height: {
45
- type: Number,
46
- default: 300
47
- },
48
- auto: Boolean,
49
- option: {
50
- type: Object,
51
- default: () => {
52
- return {
53
- errorCorrectionLevel: 'H', //纠错等级
54
- color: {
55
- dark: '#000000',
56
- light: '#ffffff'
57
- }
58
- };
59
- }
60
- }
61
- },
62
- computed: {},
63
- data() {
64
- return {
65
- mwidth: 0,
66
- mheight: 0
67
- };
68
- },
69
- watch: {
70
- logo: function (val) {
71
- this.$nextTick(() => {
72
- this.createQRCode();
73
- });
74
- },
75
- content: {
76
- immediate: true,
77
- handler(val) {
78
- if (val) {
79
- this.createQRCode();
80
- }
81
- }
82
- }
83
- },
84
- created() {},
85
- mounted() {
86
- if (this.auto) {
87
- let h =
88
- (this.$refs.qrcode.offsetHeight || this.$refs.qrcode.offsetWidth) -
89
- parseInt(util.getStyle(this.$refs.qrcode, 'padding-top'), 10) -
90
- parseInt(util.getStyle(this.$refs.qrcode, 'padding-bottom'), 10);
91
- if (h > 0) {
92
- this.mwidth = h;
93
- this.mheight = h;
94
- }
95
- } else {
96
- this.mwidth = this.width;
97
- this.mheight = this.height;
98
- }
99
- this.$nextTick(() => {
100
- this.createQRCode();
101
- });
102
- },
103
- methods: {
104
- createQRCode() {
105
- let qrcodeImg = this.$refs.qrcodeImg;
106
- //let qrcodeLogo = this.$refs.qrcodeLogo;
107
- let canvas = this.$refs.canvas;
108
- let option = util.extend({}, this.option, {
109
- width: this.mwidth,
110
- height: this.mheight
111
- });
112
- if (!qrcodeImg) {
113
- return false;
114
- }
115
- QRCode.toDataURL(this.content, option, (err, url) => {
116
- if (this.content && url) {
117
- qrcodeImg.src = url;
118
- // 画二维码里的logo// 在canvas里进行拼接
119
- let ctx = canvas.getContext('2d');
120
- setTimeout(() => {
121
- //获取图片
122
- ctx.drawImage(qrcodeImg, 0, 0, this.mwidth, this.mheight);
123
- if (this.logo && this.logo.indexOf('.') > -1) {
124
- let logo = new Image();
125
- logo.src = this.logo;
126
- //设置logo大小
127
- let logoPosition = (this.mwidth - 46) / 2; //logo相对于canvas居中定位
128
- //设置获取的logo将其变为圆角以及添加白色背景
129
- /* ctx.fillStyle = "#fff";
130
- ctx.beginPath();
131
- let h = 46; //圆角高 10为基数(logo四周白色背景为10/2)
132
- let w = 46; //圆角宽
133
- let x = logoPosition - 5;
134
- let y = logoPosition - 5;
135
- let r = 5; //圆角半径
136
- ctx.moveTo(x + r, y);
137
- ctx.arcTo(x + w, y, x + w, y + h, r);
138
- ctx.arcTo(x + w, y + h, x, y + h, r);
139
- ctx.arcTo(x, y + h, x, y, r);
140
- ctx.arcTo(x, y, x + w, y, r);
141
- ctx.closePath();
142
- ctx.fill(); */
143
- logo.onload = () => {
144
- ctx.drawImage(logo, logoPosition, logoPosition, 46, 46);
145
- qrcodeImg.src = canvas.toDataURL();
146
- };
147
- } else if (this.text) {
148
- //设置字体
149
- let fpadd = 10; //规定内间距
150
- ctx.font = 'bold 16px Arial';
151
- let tw = ctx.measureText(this.text).width; //文字真实宽度
152
- let ftop = (this.mheight - 16) / 2; //根据字体大小计算文字top
153
- let fleft = (this.mwidth - tw) / 2; //根据字体大小计算文字left
154
- let tp = 16 / 2; //字体边距为字体大小的一半可以自己设置
155
- ctx.fillStyle = '#fff';
156
- ctx.fillRect(fleft - tp / 2, ftop - tp / 2, tw + tp, 16 + tp);
157
- ctx.textBaseline = 'top'; //设置绘制文本时的文本基线。
158
- ctx.fillStyle = '#f40';
159
- ctx.fillText(this.text, fleft, ftop);
160
- }
161
- canvas.style.display = 'none';
162
- qrcodeImg.src = canvas.toDataURL();
163
- qrcodeImg.style.display = 'inline-block';
164
- }, 500);
165
- }
166
- });
167
- }
168
- }
169
- };
170
- </script>
1
+ <template>
2
+ <div class="es-qrcode-box" id="qrcode" ref="qrcode">
3
+ <template v-if="mwidth && mheight">
4
+ <img
5
+ class="es-qrcode-img"
6
+ :width="mwidth"
7
+ :height="mheight"
8
+ ref="qrcodeImg"
9
+ alt="二维码图片"
10
+ />
11
+ <!-- <img
12
+ v-if="logo"
13
+ class="es-qrcode-logo"
14
+ ref="qrcodeLogo"
15
+ :src="logo"
16
+ alt="二维码logo"
17
+ /> -->
18
+ <canvas
19
+ :width="mwidth"
20
+ :height="mheight"
21
+ class="canvas"
22
+ ref="canvas"
23
+ ></canvas>
24
+ </template>
25
+ </div>
26
+ </template>
27
+
28
+ <script>
29
+ import util from 'eoss-ui/src/utils/util';
30
+ const QRCode = require('qrcode');
31
+ export default {
32
+ name: 'EsQrCode',
33
+ props: {
34
+ content: {
35
+ type: String,
36
+ required: true
37
+ },
38
+ logo: String,
39
+ text: String,
40
+ width: {
41
+ type: Number,
42
+ default: 300
43
+ },
44
+ height: {
45
+ type: Number,
46
+ default: 300
47
+ },
48
+ auto: Boolean,
49
+ option: {
50
+ type: Object,
51
+ default: () => {
52
+ return {
53
+ errorCorrectionLevel: 'H', //纠错等级
54
+ color: {
55
+ dark: '#000000',
56
+ light: '#ffffff'
57
+ }
58
+ };
59
+ }
60
+ }
61
+ },
62
+ computed: {},
63
+ data() {
64
+ return {
65
+ mwidth: 0,
66
+ mheight: 0
67
+ };
68
+ },
69
+ watch: {
70
+ logo: function (val) {
71
+ this.$nextTick(() => {
72
+ this.createQRCode();
73
+ });
74
+ },
75
+ content: {
76
+ immediate: true,
77
+ handler(val) {
78
+ if (val) {
79
+ this.createQRCode();
80
+ }
81
+ }
82
+ }
83
+ },
84
+ created() {},
85
+ mounted() {
86
+ if (this.auto) {
87
+ let h =
88
+ (this.$refs.qrcode.offsetHeight || this.$refs.qrcode.offsetWidth) -
89
+ parseInt(util.getStyle(this.$refs.qrcode, 'padding-top'), 10) -
90
+ parseInt(util.getStyle(this.$refs.qrcode, 'padding-bottom'), 10);
91
+ if (h > 0) {
92
+ this.mwidth = h;
93
+ this.mheight = h;
94
+ }
95
+ } else {
96
+ this.mwidth = this.width;
97
+ this.mheight = this.height;
98
+ }
99
+ this.$nextTick(() => {
100
+ this.createQRCode();
101
+ });
102
+ },
103
+ methods: {
104
+ createQRCode() {
105
+ let qrcodeImg = this.$refs.qrcodeImg;
106
+ //let qrcodeLogo = this.$refs.qrcodeLogo;
107
+ let canvas = this.$refs.canvas;
108
+ let option = util.extend({}, this.option, {
109
+ width: this.mwidth,
110
+ height: this.mheight
111
+ });
112
+ if (!qrcodeImg) {
113
+ return false;
114
+ }
115
+ QRCode.toDataURL(this.content, option, (err, url) => {
116
+ if (this.content && url) {
117
+ qrcodeImg.src = url;
118
+ // 画二维码里的logo// 在canvas里进行拼接
119
+ let ctx = canvas.getContext('2d');
120
+ setTimeout(() => {
121
+ //获取图片
122
+ ctx.drawImage(qrcodeImg, 0, 0, this.mwidth, this.mheight);
123
+ if (this.logo && this.logo.indexOf('.') > -1) {
124
+ let logo = new Image();
125
+ logo.src = this.logo;
126
+ //设置logo大小
127
+ let logoPosition = (this.mwidth - 46) / 2; //logo相对于canvas居中定位
128
+ //设置获取的logo将其变为圆角以及添加白色背景
129
+ /* ctx.fillStyle = "#fff";
130
+ ctx.beginPath();
131
+ let h = 46; //圆角高 10为基数(logo四周白色背景为10/2)
132
+ let w = 46; //圆角宽
133
+ let x = logoPosition - 5;
134
+ let y = logoPosition - 5;
135
+ let r = 5; //圆角半径
136
+ ctx.moveTo(x + r, y);
137
+ ctx.arcTo(x + w, y, x + w, y + h, r);
138
+ ctx.arcTo(x + w, y + h, x, y + h, r);
139
+ ctx.arcTo(x, y + h, x, y, r);
140
+ ctx.arcTo(x, y, x + w, y, r);
141
+ ctx.closePath();
142
+ ctx.fill(); */
143
+ logo.onload = () => {
144
+ ctx.drawImage(logo, logoPosition, logoPosition, 46, 46);
145
+ qrcodeImg.src = canvas.toDataURL();
146
+ };
147
+ } else if (this.text) {
148
+ //设置字体
149
+ let fpadd = 10; //规定内间距
150
+ ctx.font = 'bold 16px Arial';
151
+ let tw = ctx.measureText(this.text).width; //文字真实宽度
152
+ let ftop = (this.mheight - 16) / 2; //根据字体大小计算文字top
153
+ let fleft = (this.mwidth - tw) / 2; //根据字体大小计算文字left
154
+ let tp = 16 / 2; //字体边距为字体大小的一半可以自己设置
155
+ ctx.fillStyle = '#fff';
156
+ ctx.fillRect(fleft - tp / 2, ftop - tp / 2, tw + tp, 16 + tp);
157
+ ctx.textBaseline = 'top'; //设置绘制文本时的文本基线。
158
+ ctx.fillStyle = '#f40';
159
+ ctx.fillText(this.text, fleft, ftop);
160
+ }
161
+ canvas.style.display = 'none';
162
+ qrcodeImg.src = canvas.toDataURL();
163
+ qrcodeImg.style.display = 'inline-block';
164
+ }, 500);
165
+ }
166
+ });
167
+ }
168
+ }
169
+ };
170
+ </script>
@@ -1,6 +1,6 @@
1
- import EsRadioGroup from './src/main';
2
-
3
- /* istanbul ignore next */
4
- EsRadioGroup.install = function(Vue) {Vue.component(EsRadioGroup.name, EsRadioGroup);};
5
-
6
- export default EsRadioGroup;
1
+ import EsRadioGroup from './src/main';
2
+
3
+ /* istanbul ignore next */
4
+ EsRadioGroup.install = function(Vue) {Vue.component(EsRadioGroup.name, EsRadioGroup);};
5
+
6
+ export default EsRadioGroup;