1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
| // Utils
| import { createNamespace } from '../../utils'; // Components
|
| import Uploader from '../../uploader';
| var namespace = createNamespace('sku-img-uploader');
| var createComponent = namespace[0];
| var t = namespace[2];
| export default createComponent({
| props: {
| value: String,
| uploadImg: Function,
| customUpload: Function,
| maxSize: {
| type: Number,
| default: 6
| }
| },
| data: function data() {
| return {
| fileList: []
| };
| },
| watch: {
| value: function value(val) {
| if (val) {
| this.fileList = [{
| url: val,
| isImage: true
| }];
| } else {
| this.fileList = [];
| }
| }
| },
| methods: {
| afterReadFile: function afterReadFile(file) {
| var _this = this;
|
| file.status = 'uploading';
| file.message = t('uploading');
| this.uploadImg(file.file, file.content).then(function (img) {
| file.status = 'done';
|
| _this.$emit('input', img);
| }).catch(function () {
| file.status = 'failed';
| file.message = t('fail');
| });
| },
| onOversize: function onOversize() {
| this.$toast(t('oversize', this.maxSize));
| },
| onDelete: function onDelete() {
| this.$emit('input', '');
| },
| onClickUpload: function onClickUpload() {
| var _this2 = this;
|
| if (this.customUpload) {
| this.customUpload().then(function (url) {
| _this2.fileList.push({
| url: url
| });
|
| _this2.$emit('input', url);
| });
| }
| }
| },
| render: function render() {
| var _this3 = this;
|
| var h = arguments[0];
| return h(Uploader, {
| "attrs": {
| "maxCount": 1,
| "readonly": !!this.customUpload,
| "maxSize": this.maxSize * 1024 * 1024,
| "afterRead": this.afterReadFile
| },
| "on": {
| "oversize": this.onOversize,
| "delete": this.onDelete,
| "click-upload": this.onClickUpload
| },
| "model": {
| value: _this3.fileList,
| callback: function callback($$v) {
| _this3.fileList = $$v;
| }
| }
| });
| }
| });
|
|