eoss-ui 0.7.45 → 0.7.47

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 (283) hide show
  1. package/lib/button-group.js +3 -3
  2. package/lib/calendar.js +6 -6
  3. package/lib/calogin.js +233 -233
  4. package/lib/clients.js +5 -5
  5. package/lib/data-table.js +21 -16
  6. package/lib/enable-drag.js +9 -8
  7. package/lib/eoss-ui.common.js +1126 -1082
  8. package/lib/flow-list.js +81 -81
  9. package/lib/flow.js +354 -348
  10. package/lib/handler.js +8 -8
  11. package/lib/icon.js +3 -3
  12. package/lib/icons.js +1 -1
  13. package/lib/index.js +1 -1
  14. package/lib/login.js +22 -19
  15. package/lib/main.js +296 -267
  16. package/lib/nav.js +4 -4
  17. package/lib/qr-code.js +13 -13
  18. package/lib/theme-chalk/base.css +1 -1
  19. package/lib/theme-chalk/fonts/iconfont.ttf +0 -0
  20. package/lib/theme-chalk/fonts/iconfont.woff +0 -0
  21. package/lib/theme-chalk/icon.css +1 -1
  22. package/lib/theme-chalk/index.css +1 -1
  23. package/lib/theme-chalk/login.css +1 -1
  24. package/lib/theme-chalk/main.css +1 -1
  25. package/lib/theme-chalk/menu.css +1 -1
  26. package/lib/theme-chalk/simplicity.css +1 -1
  27. package/lib/theme-chalk/sizer.css +1 -1
  28. package/lib/theme-chalk/upload.css +1 -1
  29. package/lib/tips.js +3 -3
  30. package/lib/upload.js +9 -9
  31. package/package.json +160 -160
  32. package/packages/button/index.js +5 -5
  33. package/packages/button/src/main.vue +418 -418
  34. package/packages/button-group/index.js +5 -5
  35. package/packages/button-group/src/main.vue +346 -346
  36. package/packages/calendar/index.js +5 -5
  37. package/packages/calendar/src/main.vue +4 -4
  38. package/packages/calogin/index.js +5 -5
  39. package/packages/calogin/src/main.vue +412 -412
  40. package/packages/calogin/src/plugin.js +915 -915
  41. package/packages/card/index.js +5 -5
  42. package/packages/card/src/main.vue +156 -156
  43. package/packages/cascader/index.js +5 -5
  44. package/packages/cascader/src/main.vue +168 -168
  45. package/packages/checkbox-group/index.js +5 -5
  46. package/packages/checkbox-group/src/main.vue +333 -333
  47. package/packages/clients/index.js +5 -5
  48. package/packages/clients/src/main.vue +151 -151
  49. package/packages/data-table/index.js +5 -5
  50. package/packages/data-table/src/children.vue +39 -39
  51. package/packages/data-table/src/column.vue +992 -992
  52. package/packages/data-table/src/main.vue +1840 -1831
  53. package/packages/data-table/src/sizer.vue +195 -195
  54. package/packages/data-table-form/index.js +5 -5
  55. package/packages/data-table-form/src/checkbox.vue +101 -101
  56. package/packages/data-table-form/src/colgroup.vue +17 -17
  57. package/packages/data-table-form/src/main.vue +181 -181
  58. package/packages/data-table-form/src/radio.vue +65 -65
  59. package/packages/data-table-form/src/table.vue +233 -233
  60. package/packages/data-table-form/src/tbody.vue +336 -336
  61. package/packages/data-table-form/src/thead.vue +68 -68
  62. package/packages/date-picker/index.js +5 -5
  63. package/packages/date-picker/src/main.vue +236 -236
  64. package/packages/dialog/index.js +5 -5
  65. package/packages/enable-drag/index.js +5 -5
  66. package/packages/enable-drag/src/main.vue +5 -5
  67. package/packages/enterprise/index.js +5 -5
  68. package/packages/enterprise/src/main.vue +66 -66
  69. package/packages/error-page/index.js +5 -5
  70. package/packages/error-page/src/main.vue +44 -44
  71. package/packages/flow/index.js +5 -5
  72. package/packages/flow/src/component/Circulate.vue +413 -413
  73. package/packages/flow/src/component/CommonOpinions.vue +373 -373
  74. package/packages/flow/src/component/CustomPreset.vue +322 -322
  75. package/packages/flow/src/component/FileList.vue +97 -97
  76. package/packages/flow/src/component/FreeCirculation.vue +240 -240
  77. package/packages/flow/src/component/Preset.vue +255 -255
  78. package/packages/flow/src/component/SendMsg.vue +242 -242
  79. package/packages/flow/src/component/TimeLimit.vue +190 -190
  80. package/packages/flow/src/component/taskUnionExamine.vue +756 -756
  81. package/packages/flow/src/form.vue +121 -121
  82. package/packages/flow/src/freeStartFlow.vue +2846 -2847
  83. package/packages/flow/src/main.vue +3861 -3855
  84. package/packages/flow/src/processForm.vue +1365 -1365
  85. package/packages/flow/src/processReject.vue +309 -309
  86. package/packages/flow/src/reset.vue +942 -941
  87. package/packages/flow/src/selectUser.vue +2 -1
  88. package/packages/flow/src/startTaskRead.vue +692 -691
  89. package/packages/flow/src/supervise.vue +159 -159
  90. package/packages/flow/src/table.vue +58 -58
  91. package/packages/flow-group/index.js +5 -5
  92. package/packages/flow-group/src/main.vue +717 -717
  93. package/packages/flow-list/index.js +5 -5
  94. package/packages/flow-list/src/main.vue +1787 -1787
  95. package/packages/form/index.js +5 -5
  96. package/packages/form/src/main.vue +3901 -3901
  97. package/packages/form/src/table.vue +1512 -1512
  98. package/packages/handle-user/index.js +5 -5
  99. package/packages/handle-user/src/main.vue +137 -137
  100. package/packages/handler/index.js +5 -5
  101. package/packages/handler/src/main.vue +496 -496
  102. package/packages/icon/index.js +5 -5
  103. package/packages/icon/src/main.vue +104 -104
  104. package/packages/icons/index.js +5 -5
  105. package/packages/icons/src/icon.json +1 -1
  106. package/packages/icons/src/main.vue +81 -81
  107. package/packages/input/index.js +5 -5
  108. package/packages/input/src/main.vue +356 -356
  109. package/packages/input-number/index.js +5 -5
  110. package/packages/input-number/src/main.vue +106 -106
  111. package/packages/label/index.js +5 -5
  112. package/packages/label/src/main.vue +457 -457
  113. package/packages/layout/index.js +5 -5
  114. package/packages/layout/src/item.vue +152 -152
  115. package/packages/layout/src/main.vue +31 -31
  116. package/packages/login/index.js +5 -5
  117. package/packages/login/src/main.vue +2082 -2078
  118. package/packages/login/src/resetPassword.vue +557 -557
  119. package/packages/main/index.js +5 -5
  120. package/packages/main/src/default/message.vue +249 -249
  121. package/packages/main/src/default/notice.vue +157 -157
  122. package/packages/main/src/default/userinfo.vue +503 -503
  123. package/packages/main/src/public/online.vue +89 -89
  124. package/packages/main/src/public/search.vue +464 -464
  125. package/packages/main/src/public/settings.vue +227 -221
  126. package/packages/main/src/simplicity/apps.vue +388 -388
  127. package/packages/main/src/simplicity/avatar.vue +82 -82
  128. package/packages/main/src/simplicity/handler.vue +160 -158
  129. package/packages/main/src/simplicity/index.vue +2277 -2277
  130. package/packages/main/src/simplicity/lists.vue +84 -84
  131. package/packages/main/src/simplicity/menu-list.vue +135 -135
  132. package/packages/main/src/simplicity/message.vue +293 -293
  133. package/packages/main/src/simplicity/notice.vue +222 -222
  134. package/packages/main/src/simplicity/router-page.vue +45 -45
  135. package/packages/main/src/simplicity/sub-menu.vue +274 -274
  136. package/packages/main/src/simplicity/user.vue +259 -259
  137. package/packages/main/src/simplicity/userinfo.vue +401 -401
  138. package/packages/menu/index.js +5 -5
  139. package/packages/menu/src/main.vue +595 -595
  140. package/packages/nav/index.js +5 -5
  141. package/packages/nav/src/main.vue +351 -351
  142. package/packages/notify/index.js +5 -5
  143. package/packages/notify/src/main.vue +538 -538
  144. package/packages/page/index.js +5 -5
  145. package/packages/page/src/main.vue +167 -167
  146. package/packages/pagination/index.js +5 -5
  147. package/packages/pagination/src/main.vue +96 -96
  148. package/packages/player/index.js +5 -5
  149. package/packages/player/src/main.vue +194 -194
  150. package/packages/qr-code/index.js +5 -5
  151. package/packages/qr-code/src/main.vue +170 -170
  152. package/packages/radio-group/index.js +6 -6
  153. package/packages/radio-group/src/main.vue +319 -319
  154. package/packages/retrial-auth/index.js +5 -5
  155. package/packages/retrial-auth/src/main.vue +280 -280
  156. package/packages/select/index.js +5 -5
  157. package/packages/select/src/main.vue +782 -782
  158. package/packages/select-ganged/index.js +5 -5
  159. package/packages/select-ganged/src/main.vue +724 -724
  160. package/packages/selector/index.js +5 -5
  161. package/packages/selector/src/main.vue +761 -761
  162. package/packages/selector-panel/index.js +5 -5
  163. package/packages/selector-panel/src/main.vue +1027 -1027
  164. package/packages/selector-panel/src/selection.vue +170 -170
  165. package/packages/selector-panel/src/tree.vue +129 -129
  166. package/packages/sizer/index.js +5 -5
  167. package/packages/sizer/src/main.vue +254 -254
  168. package/packages/steps/index.js +5 -5
  169. package/packages/steps/src/main.vue +181 -181
  170. package/packages/switch/index.js +5 -5
  171. package/packages/switch/src/main.vue +170 -170
  172. package/packages/table-form/index.js +5 -5
  173. package/packages/tabs/index.js +5 -5
  174. package/packages/tabs/src/main.vue +788 -788
  175. package/packages/tabs-panel/index.js +5 -5
  176. package/packages/tabs-panel/src/main.vue +29 -29
  177. package/packages/theme-chalk/lib/base.css +1 -1
  178. package/packages/theme-chalk/lib/fonts/iconfont.ttf +0 -0
  179. package/packages/theme-chalk/lib/fonts/iconfont.woff +0 -0
  180. package/packages/theme-chalk/lib/icon.css +1 -1
  181. package/packages/theme-chalk/lib/index.css +1 -1
  182. package/packages/theme-chalk/lib/login.css +1 -1
  183. package/packages/theme-chalk/lib/main.css +1 -1
  184. package/packages/theme-chalk/lib/menu.css +1 -1
  185. package/packages/theme-chalk/lib/simplicity.css +1 -1
  186. package/packages/theme-chalk/lib/sizer.css +1 -1
  187. package/packages/theme-chalk/lib/upload.css +1 -1
  188. package/packages/theme-chalk/src/base.scss +261 -261
  189. package/packages/theme-chalk/src/button-group.scss +176 -176
  190. package/packages/theme-chalk/src/button.scss +24 -24
  191. package/packages/theme-chalk/src/calendar.scss +113 -113
  192. package/packages/theme-chalk/src/card.scss +99 -99
  193. package/packages/theme-chalk/src/checkbox-group.scss +8 -8
  194. package/packages/theme-chalk/src/clients.scss +87 -87
  195. package/packages/theme-chalk/src/data-table-form.scss +67 -67
  196. package/packages/theme-chalk/src/data-table.scss +293 -293
  197. package/packages/theme-chalk/src/date-picker.scss +7 -7
  198. package/packages/theme-chalk/src/dialog.scss +77 -77
  199. package/packages/theme-chalk/src/enable-drag.scss +181 -181
  200. package/packages/theme-chalk/src/enterprise.scss +5 -5
  201. package/packages/theme-chalk/src/error-page.scss +18 -18
  202. package/packages/theme-chalk/src/flow-group.scss +110 -110
  203. package/packages/theme-chalk/src/flow-list.scss +39 -39
  204. package/packages/theme-chalk/src/flow.scss +351 -351
  205. package/packages/theme-chalk/src/fonts/iconfont.ttf +0 -0
  206. package/packages/theme-chalk/src/fonts/iconfont.woff +0 -0
  207. package/packages/theme-chalk/src/form.scss +501 -501
  208. package/packages/theme-chalk/src/handle-user.scss +40 -40
  209. package/packages/theme-chalk/src/handler.scss +148 -148
  210. package/packages/theme-chalk/src/icon.scss +1429 -1817
  211. package/packages/theme-chalk/src/icons.scss +99 -99
  212. package/packages/theme-chalk/src/input.scss +9 -9
  213. package/packages/theme-chalk/src/label.scss +24 -24
  214. package/packages/theme-chalk/src/layout.scss +46 -46
  215. package/packages/theme-chalk/src/login.scss +1006 -987
  216. package/packages/theme-chalk/src/main.scss +663 -663
  217. package/packages/theme-chalk/src/menu.scss +224 -224
  218. package/packages/theme-chalk/src/mixins/color.scss +117 -117
  219. package/packages/theme-chalk/src/nav.scss +111 -111
  220. package/packages/theme-chalk/src/page.scss +3 -3
  221. package/packages/theme-chalk/src/pagination.scss +29 -29
  222. package/packages/theme-chalk/src/player.scss +9 -9
  223. package/packages/theme-chalk/src/qr-code.scss +17 -17
  224. package/packages/theme-chalk/src/radio-group.scss +9 -9
  225. package/packages/theme-chalk/src/retrial-auth.scss +38 -38
  226. package/packages/theme-chalk/src/select-ganged.scss +8 -8
  227. package/packages/theme-chalk/src/select.scss +8 -8
  228. package/packages/theme-chalk/src/selector-panel.scss +204 -204
  229. package/packages/theme-chalk/src/selector.scss +114 -114
  230. package/packages/theme-chalk/src/simplicity.scss +1380 -1380
  231. package/packages/theme-chalk/src/sizer.scss +36 -36
  232. package/packages/theme-chalk/src/steps.scss +88 -88
  233. package/packages/theme-chalk/src/switch.scss +3 -3
  234. package/packages/theme-chalk/src/table-form.scss +1 -1
  235. package/packages/theme-chalk/src/tabs.scss +87 -87
  236. package/packages/theme-chalk/src/tips.scss +7 -7
  237. package/packages/theme-chalk/src/toolbar.scss +179 -179
  238. package/packages/theme-chalk/src/tree-group.scss +72 -72
  239. package/packages/theme-chalk/src/tree.scss +165 -165
  240. package/packages/theme-chalk/src/upload.scss +172 -172
  241. package/packages/theme-chalk/src/wxlogin.scss +3 -3
  242. package/packages/tips/index.js +5 -5
  243. package/packages/tips/src/main.vue +141 -141
  244. package/packages/toolbar/index.js +5 -5
  245. package/packages/toolbar/src/main.vue +430 -430
  246. package/packages/tree/index.js +5 -5
  247. package/packages/tree-group/index.js +5 -5
  248. package/packages/upload/index.js +5 -5
  249. package/packages/upload/src/main.vue +1344 -1344
  250. package/packages/upload/src/picture.js +15 -15
  251. package/packages/wujie/index.js +5 -5
  252. package/packages/wujie/src/main.vue +145 -145
  253. package/packages/wxlogin/index.js +5 -5
  254. package/packages/wxlogin/src/main.vue +128 -128
  255. package/src/config/api.js +315 -315
  256. package/src/config/image.js +2 -2
  257. package/src/index.js +163 -163
  258. package/src/utils/bus.js +3 -3
  259. package/src/utils/date-util.js +312 -312
  260. package/src/utils/http.js +50 -50
  261. package/src/utils/rules.js +18 -18
  262. package/src/utils/store.js +21 -21
  263. package/src/utils/webSocket.js +107 -107
  264. package/packages/.DS_Store +0 -0
  265. package/packages/calogin/.DS_Store +0 -0
  266. package/packages/date-picker/.DS_Store +0 -0
  267. package/packages/date-picker/src/.DS_Store +0 -0
  268. package/packages/dialog/.DS_Store +0 -0
  269. package/packages/flow/.DS_Store +0 -0
  270. package/packages/flow/src/.DS_Store +0 -0
  271. package/packages/flow-list/.DS_Store +0 -0
  272. package/packages/form/.DS_Store +0 -0
  273. package/packages/login/.DS_Store +0 -0
  274. package/packages/main/.DS_Store +0 -0
  275. package/packages/main/src/.DS_Store +0 -0
  276. package/packages/menu/.DS_Store +0 -0
  277. package/packages/select/.DS_Store +0 -0
  278. package/packages/selector/.DS_Store +0 -0
  279. package/packages/selector-panel/.DS_Store +0 -0
  280. package/packages/theme-chalk/src/.DS_Store +0 -0
  281. package/packages/upload/.DS_Store +0 -0
  282. package/src/.DS_Store +0 -0
  283. 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;