meixioacomponent 0.3.54 → 0.3.55
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.
- package/lib/meixioacomponent.common.js +918 -543
- package/lib/meixioacomponent.umd.js +918 -543
- package/lib/meixioacomponent.umd.min.js +28 -28
- package/package.json +2 -1
- package/packages/components/base/baseCropper/index.vue +131 -0
- package/packages/components/base/baseUpload/baseUploadItem.vue +39 -3
- package/packages/components/base/baseUpload/mixins.js +21 -28
- package/packages/components/index.js +56 -54
- package/packages/config/use/useCropper.js +51 -0
- package/src/App.vue +20 -9
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "meixioacomponent",
|
|
3
|
-
"version": "0.3.
|
|
3
|
+
"version": "0.3.55",
|
|
4
4
|
"private": false,
|
|
5
5
|
"author": "YuRi",
|
|
6
6
|
"main": "lib/meixioacomponent.umd.min.js",
|
|
@@ -18,6 +18,7 @@
|
|
|
18
18
|
"gulp": "^4.0.0",
|
|
19
19
|
"register-service-worker": "^1.7.1",
|
|
20
20
|
"vue": "^2.7.0",
|
|
21
|
+
"vue-cropper": "^0.5.8",
|
|
21
22
|
"vue-router": "^3.2.0",
|
|
22
23
|
"vuedraggable": "^2.24.3",
|
|
23
24
|
"vuex": "^3.4.0"
|
|
@@ -0,0 +1,131 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<base-dialog
|
|
3
|
+
ref="baseDialog"
|
|
4
|
+
:width="`800px`"
|
|
5
|
+
:title="`截图`"
|
|
6
|
+
:hasCloseIcon="true"
|
|
7
|
+
:destroy="closeCropper"
|
|
8
|
+
:contentHeight="`400px`"
|
|
9
|
+
>
|
|
10
|
+
<div class="base-dialog-wrap" slot="dialog-content">
|
|
11
|
+
<vueCropper
|
|
12
|
+
:img="imgUrl"
|
|
13
|
+
ref="cropper"
|
|
14
|
+
:autoCrop="true"
|
|
15
|
+
:class="[croppetShape]"
|
|
16
|
+
:fixed="fixedOutline"
|
|
17
|
+
:fixedBox="fixedOutline"
|
|
18
|
+
:autoCropWidth="cropperOutline[0]"
|
|
19
|
+
:autoCropHeight="cropperOutline[1]"
|
|
20
|
+
></vueCropper>
|
|
21
|
+
</div>
|
|
22
|
+
<div slot="dialog-footer" class="dialog-footer">
|
|
23
|
+
<base-button-handle
|
|
24
|
+
size="mini"
|
|
25
|
+
:align="`end`"
|
|
26
|
+
:config="buttonConfig"
|
|
27
|
+
></base-button-handle>
|
|
28
|
+
</div>
|
|
29
|
+
</base-dialog>
|
|
30
|
+
</template>
|
|
31
|
+
|
|
32
|
+
<script>
|
|
33
|
+
import BaseButtonHandle from '../baseButtonHandle/baseButtonHandle.vue'
|
|
34
|
+
export default {
|
|
35
|
+
data() {
|
|
36
|
+
return {
|
|
37
|
+
buttonConfig: [],
|
|
38
|
+
}
|
|
39
|
+
},
|
|
40
|
+
created() {
|
|
41
|
+
this.buttonConfig = [
|
|
42
|
+
{
|
|
43
|
+
text: '取消',
|
|
44
|
+
type: 'info',
|
|
45
|
+
click: () => {
|
|
46
|
+
this.cancel()
|
|
47
|
+
},
|
|
48
|
+
},
|
|
49
|
+
{
|
|
50
|
+
text: '截图',
|
|
51
|
+
type: 'primary',
|
|
52
|
+
click: async () => {
|
|
53
|
+
this.complated().then((res) => {
|
|
54
|
+
this.$emit('cropperComplated', res)
|
|
55
|
+
this.closeCropper()
|
|
56
|
+
})
|
|
57
|
+
},
|
|
58
|
+
},
|
|
59
|
+
]
|
|
60
|
+
},
|
|
61
|
+
mounted() {
|
|
62
|
+
this.$nextTick(() => {
|
|
63
|
+
this.$refs.baseDialog.showDialog()
|
|
64
|
+
|
|
65
|
+
this.$nextTick(() => {
|
|
66
|
+
this.start()
|
|
67
|
+
})
|
|
68
|
+
})
|
|
69
|
+
},
|
|
70
|
+
computed: {
|
|
71
|
+
imgUrl() {
|
|
72
|
+
return window.URL.createObjectURL(this.img)
|
|
73
|
+
},
|
|
74
|
+
fixedOutline() {
|
|
75
|
+
const { croppetShape } = this.$props
|
|
76
|
+
if (croppetShape == 'circ') {
|
|
77
|
+
return true
|
|
78
|
+
}
|
|
79
|
+
return false
|
|
80
|
+
},
|
|
81
|
+
|
|
82
|
+
closeCropper() {
|
|
83
|
+
this.$destroy()
|
|
84
|
+
},
|
|
85
|
+
},
|
|
86
|
+
components: {
|
|
87
|
+
BaseButtonHandle,
|
|
88
|
+
},
|
|
89
|
+
props: {
|
|
90
|
+
img: {},
|
|
91
|
+
croppetShape: {
|
|
92
|
+
type: String,
|
|
93
|
+
default: 'rect',
|
|
94
|
+
},
|
|
95
|
+
cropperOutline: {
|
|
96
|
+
type: Array,
|
|
97
|
+
default: () => [100, 100],
|
|
98
|
+
},
|
|
99
|
+
},
|
|
100
|
+
methods: {
|
|
101
|
+
start() {
|
|
102
|
+
this.$refs.cropper.startCrop()
|
|
103
|
+
},
|
|
104
|
+
cancel() {
|
|
105
|
+
this.$refs.cropper.stopCrop()
|
|
106
|
+
this.$refs.cropper.clearCrop()
|
|
107
|
+
},
|
|
108
|
+
complated() {
|
|
109
|
+
return new Promise((resolve, reject) => {
|
|
110
|
+
this.$refs.cropper.getCropBlob((data) => {
|
|
111
|
+
resolve(data)
|
|
112
|
+
})
|
|
113
|
+
})
|
|
114
|
+
},
|
|
115
|
+
},
|
|
116
|
+
}
|
|
117
|
+
</script>
|
|
118
|
+
|
|
119
|
+
<style lang="less" scoped>
|
|
120
|
+
.base-dialog-wrap {
|
|
121
|
+
width: 100%;
|
|
122
|
+
height: 100%;
|
|
123
|
+
|
|
124
|
+
.circ {
|
|
125
|
+
/deep/ .cropper-crop-box {
|
|
126
|
+
border-radius: 50%;
|
|
127
|
+
overflow: hidden;
|
|
128
|
+
}
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
</style>
|
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
type="file"
|
|
11
11
|
ref="inputFile"
|
|
12
12
|
:accept="accept"
|
|
13
|
-
@change="
|
|
13
|
+
@change="inputFileChange"
|
|
14
14
|
style="display: none;"
|
|
15
15
|
v-if="type == 'upload'"
|
|
16
16
|
:multiple="uploadType == 'single' ? false : true"
|
|
@@ -124,6 +124,20 @@ export default {
|
|
|
124
124
|
fileSize: {
|
|
125
125
|
default: 99,
|
|
126
126
|
},
|
|
127
|
+
cropper: {
|
|
128
|
+
type: Boolean,
|
|
129
|
+
default: false,
|
|
130
|
+
},
|
|
131
|
+
|
|
132
|
+
cropperConfig: {
|
|
133
|
+
type: Object,
|
|
134
|
+
default: () => {
|
|
135
|
+
return {
|
|
136
|
+
croppetShape: 'rect',
|
|
137
|
+
cropperOutline: [100, 100],
|
|
138
|
+
}
|
|
139
|
+
},
|
|
140
|
+
},
|
|
127
141
|
},
|
|
128
142
|
computed: {
|
|
129
143
|
module: {
|
|
@@ -226,14 +240,36 @@ export default {
|
|
|
226
240
|
return list
|
|
227
241
|
},
|
|
228
242
|
|
|
229
|
-
|
|
243
|
+
inputFileChange(e) {
|
|
244
|
+
const { cropper, isGroup, fileType, uploadType } = this.$props
|
|
230
245
|
let files = e.target.files
|
|
246
|
+
if (cropper && !isGroup && fileType == 'img' && uploadType == 'single') {
|
|
247
|
+
this.userCropper(files[0])
|
|
248
|
+
return
|
|
249
|
+
} else {
|
|
250
|
+
this.fileComplated(files)
|
|
251
|
+
}
|
|
252
|
+
|
|
253
|
+
// this.$refs.inputFile.value = ''
|
|
254
|
+
},
|
|
255
|
+
|
|
256
|
+
async fileComplated(files) {
|
|
231
257
|
let list = await this.returnFiles(files)
|
|
232
258
|
if (list.length > 0) {
|
|
233
259
|
this.emitEvent(list)
|
|
234
260
|
}
|
|
261
|
+
},
|
|
235
262
|
|
|
236
|
-
|
|
263
|
+
userCropper(file) {
|
|
264
|
+
const { cropperConfig } = this.$props
|
|
265
|
+
const module = require('../../../config/use/useCropper').default
|
|
266
|
+
module.startCropper({
|
|
267
|
+
img: file,
|
|
268
|
+
config: cropperConfig,
|
|
269
|
+
complatedCb: (res) => {
|
|
270
|
+
this.fileComplated(res)
|
|
271
|
+
},
|
|
272
|
+
})
|
|
237
273
|
},
|
|
238
274
|
|
|
239
275
|
emitEvent(list) {
|
|
@@ -1,32 +1,28 @@
|
|
|
1
|
-
import componentConfig from
|
|
2
|
-
import useUpload from
|
|
1
|
+
import componentConfig from '../../../config/componentConfig'
|
|
2
|
+
import useUpload from '../../../config/use/UseUpload'
|
|
3
3
|
export const baseUploadMixins = {
|
|
4
4
|
data() {
|
|
5
5
|
return {
|
|
6
6
|
dynamicmount: null,
|
|
7
|
-
}
|
|
7
|
+
}
|
|
8
8
|
},
|
|
9
|
-
created() {
|
|
10
|
-
},
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
},
|
|
14
|
-
beforeDestroy() { },
|
|
9
|
+
created() {},
|
|
10
|
+
mounted() {},
|
|
11
|
+
beforeDestroy() {},
|
|
15
12
|
|
|
16
13
|
props: {
|
|
17
14
|
uploadPath: {
|
|
18
15
|
default: () => {
|
|
19
|
-
return [0, 1]
|
|
16
|
+
return [0, 1]
|
|
20
17
|
},
|
|
21
18
|
},
|
|
22
|
-
|
|
23
19
|
},
|
|
24
20
|
computed: {
|
|
25
21
|
isMax() {
|
|
26
22
|
if (this.module.length >= this.$props.max) {
|
|
27
|
-
return true
|
|
23
|
+
return true
|
|
28
24
|
}
|
|
29
|
-
return false
|
|
25
|
+
return false
|
|
30
26
|
},
|
|
31
27
|
},
|
|
32
28
|
|
|
@@ -35,33 +31,30 @@ export const baseUploadMixins = {
|
|
|
35
31
|
if (this.module) {
|
|
36
32
|
for (let i = 0; i < list.length; i++) {
|
|
37
33
|
if (this.isMax) {
|
|
38
|
-
this.$message.error(
|
|
39
|
-
break
|
|
34
|
+
this.$message.error('超出文件上传限制')
|
|
35
|
+
break
|
|
40
36
|
}
|
|
41
|
-
list[i].cb = this.uploadEd
|
|
42
|
-
this.module.push(list[i])
|
|
37
|
+
list[i].cb = this.uploadEd
|
|
38
|
+
this.module.push(list[i])
|
|
43
39
|
}
|
|
44
40
|
}
|
|
45
|
-
const { uploadPath } = this.$props
|
|
41
|
+
const { uploadPath } = this.$props
|
|
46
42
|
|
|
47
|
-
componentConfig.setUploadUrl(uploadPath[0], uploadPath[1])
|
|
43
|
+
componentConfig.setUploadUrl(uploadPath[0], uploadPath[1])
|
|
48
44
|
|
|
49
45
|
if (!this.uploadLoading) {
|
|
50
|
-
useUpload.toUpload(
|
|
51
|
-
this.module ? this.module : list,
|
|
52
|
-
this.isGroup ? this.uploadEd : null
|
|
53
|
-
);
|
|
46
|
+
useUpload.toUpload(this.module ? this.module : list, this.uploadEd)
|
|
54
47
|
}
|
|
55
48
|
|
|
56
|
-
this.uploadLoading = true
|
|
49
|
+
this.uploadLoading = true
|
|
57
50
|
},
|
|
58
51
|
|
|
59
52
|
uploadEd(list) {
|
|
60
53
|
if (!this.isGroup) {
|
|
61
|
-
this.module = list
|
|
54
|
+
this.module = list
|
|
62
55
|
}
|
|
63
|
-
this.uploadLoading = false
|
|
64
|
-
this.$emit(
|
|
56
|
+
this.uploadLoading = false
|
|
57
|
+
this.$emit('uploadEd', list)
|
|
65
58
|
},
|
|
66
59
|
},
|
|
67
|
-
}
|
|
60
|
+
}
|
|
@@ -1,50 +1,51 @@
|
|
|
1
|
-
import baseAnchor from
|
|
2
|
-
import baseAppendix from
|
|
3
|
-
import baseArea from
|
|
4
|
-
import baseAvatar from
|
|
5
|
-
import baseButtonHandle from
|
|
6
|
-
import baseDefaultSvg from
|
|
7
|
-
import baseDialog from
|
|
8
|
-
import baseDialogTable from
|
|
9
|
-
import baseDrawer from
|
|
10
|
-
import baseEdito from
|
|
11
|
-
import baseFixedHeader from
|
|
12
|
-
import baseIcon from
|
|
13
|
-
import baseImageViewer from
|
|
14
|
-
import baseImg from
|
|
15
|
-
import baseInforWrap from
|
|
16
|
-
import baseLineInfoGroup from
|
|
17
|
-
import baseLineInfoItem from
|
|
18
|
-
import basePageHeader from
|
|
19
|
-
import basePagination from
|
|
20
|
-
import basePlainTable from
|
|
21
|
-
import baseSection from
|
|
22
|
-
import baseSkeleton from
|
|
23
|
-
import baseSvg from
|
|
24
|
-
import baseTimeTypeSelect from
|
|
25
|
-
import baseToggle from
|
|
26
|
-
import baseUploadItem from
|
|
27
|
-
import baseUpload from
|
|
28
|
-
import upload from
|
|
29
|
-
import baseDialogForm from
|
|
30
|
-
import baseForm from
|
|
31
|
-
import baseFormWrap from
|
|
32
|
-
import baseProTable from
|
|
33
|
-
import baseMoverVerifiBar from
|
|
34
|
-
import baseTimeLine from
|
|
35
|
-
import basePopoverButton from
|
|
36
|
-
import baseTreeSelect from
|
|
1
|
+
import baseAnchor from './base/baseAnchor'
|
|
2
|
+
import baseAppendix from './base/baseAppendix'
|
|
3
|
+
import baseArea from './base/baseArea'
|
|
4
|
+
import baseAvatar from './base/baseAvatar'
|
|
5
|
+
import baseButtonHandle from './base/baseButtonHandle'
|
|
6
|
+
import baseDefaultSvg from './base/baseDefaultSvg'
|
|
7
|
+
import baseDialog from './base/baseDialog'
|
|
8
|
+
import baseDialogTable from './base/baseDialogTable'
|
|
9
|
+
import baseDrawer from './base/baseDrawer'
|
|
10
|
+
import baseEdito from './base/baseEdito'
|
|
11
|
+
import baseFixedHeader from './base/baseFixedHeader'
|
|
12
|
+
import baseIcon from './base/baseIcon'
|
|
13
|
+
import baseImageViewer from './base/baseImageViewer'
|
|
14
|
+
import baseImg from './base/baseImg'
|
|
15
|
+
import baseInforWrap from './base/baseInforWrap'
|
|
16
|
+
import baseLineInfoGroup from './base/baseLineInfoGroup'
|
|
17
|
+
import baseLineInfoItem from './base/baseLineInfoItem'
|
|
18
|
+
import basePageHeader from './base/basePageHeader'
|
|
19
|
+
import basePagination from './base/basePagination'
|
|
20
|
+
import basePlainTable from './base/basePlainTable'
|
|
21
|
+
import baseSection from './base/baseSection'
|
|
22
|
+
import baseSkeleton from './base/baseSkeleton'
|
|
23
|
+
import baseSvg from './base/baseSvg'
|
|
24
|
+
import baseTimeTypeSelect from './base/baseTimeTypeSelect'
|
|
25
|
+
import baseToggle from './base/baseToggle'
|
|
26
|
+
import baseUploadItem from './base/baseUpload/baseUploadItem'
|
|
27
|
+
import baseUpload from './base/baseUpload/baseUpload'
|
|
28
|
+
import upload from './base/upload'
|
|
29
|
+
import baseDialogForm from './proForm/dialogForm/dialogFormIndex'
|
|
30
|
+
import baseForm from './proForm/proForm/index'
|
|
31
|
+
import baseFormWrap from './proForm/proFormWrap/index'
|
|
32
|
+
import baseProTable from './proPageTable/index'
|
|
33
|
+
import baseMoverVerifiBar from './base/baseMoverVerifiBar'
|
|
34
|
+
import baseTimeLine from './base/baseTimeLine'
|
|
35
|
+
import basePopoverButton from './base/basePopoverButton'
|
|
36
|
+
import baseTreeSelect from './base/baseTreeSelect'
|
|
37
|
+
import VueCropper from 'vue-cropper'
|
|
37
38
|
// js 文件相关
|
|
38
|
-
import Theme from
|
|
39
|
-
import DynamicMount from
|
|
40
|
-
import componentConfig from
|
|
41
|
-
import DynamicMountClass from
|
|
42
|
-
import SelectStore from
|
|
39
|
+
import Theme from '../config/theme/theme'
|
|
40
|
+
import DynamicMount from './dynamicmount/index.js'
|
|
41
|
+
import componentConfig from '../config/componentConfig'
|
|
42
|
+
import DynamicMountClass from './dynamicmount/DynamicMount'
|
|
43
|
+
import SelectStore from '../config/selectStore/SelectStore'
|
|
43
44
|
//
|
|
44
|
-
import useImg from
|
|
45
|
-
import UseDrag from
|
|
46
|
-
import useUpload from
|
|
47
|
-
import useFixedHeader from
|
|
45
|
+
import useImg from '../config/use/UseImg'
|
|
46
|
+
import UseDrag from '../config/use/useDrag'
|
|
47
|
+
import useUpload from '../config/use/UseUpload'
|
|
48
|
+
import useFixedHeader from '../config/use/useFixedHeader'
|
|
48
49
|
|
|
49
50
|
const meixicomponents = [
|
|
50
51
|
baseAnchor,
|
|
@@ -82,18 +83,19 @@ const meixicomponents = [
|
|
|
82
83
|
baseMoverVerifiBar,
|
|
83
84
|
baseTimeLine,
|
|
84
85
|
basePopoverButton,
|
|
85
|
-
baseTreeSelect
|
|
86
|
-
]
|
|
86
|
+
baseTreeSelect,
|
|
87
|
+
]
|
|
87
88
|
|
|
88
89
|
const install = (Vue) => {
|
|
89
90
|
meixicomponents.forEach((component) => {
|
|
90
|
-
Vue.component(component.name, component)
|
|
91
|
-
})
|
|
92
|
-
Vue.use(DynamicMount)
|
|
93
|
-
|
|
91
|
+
Vue.component(component.name, component)
|
|
92
|
+
})
|
|
93
|
+
Vue.use(DynamicMount)
|
|
94
|
+
Vue.use(VueCropper);
|
|
95
|
+
}
|
|
94
96
|
|
|
95
|
-
if (typeof window !==
|
|
96
|
-
install(window.Vue)
|
|
97
|
+
if (typeof window !== 'undefined' && window.Vue) {
|
|
98
|
+
install(window.Vue)
|
|
97
99
|
}
|
|
98
100
|
|
|
99
101
|
export default {
|
|
@@ -143,4 +145,4 @@ export default {
|
|
|
143
145
|
useUpload,
|
|
144
146
|
useFixedHeader,
|
|
145
147
|
DynamicMountClass,
|
|
146
|
-
}
|
|
148
|
+
}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import baseCropper from '../../components/base/baseCropper/index.vue'
|
|
2
|
+
import DynamicMount from '../../components/dynamicmount/DynamicMount'
|
|
3
|
+
class UseCropper {
|
|
4
|
+
constructor() {
|
|
5
|
+
this.complatedCb = null
|
|
6
|
+
this.component = null
|
|
7
|
+
}
|
|
8
|
+
startCropper(params) {
|
|
9
|
+
this.complatedCb = params.complatedCb || null
|
|
10
|
+
const config = {
|
|
11
|
+
img: params.img,
|
|
12
|
+
croppetShape: params.config.croppetShape,
|
|
13
|
+
cropperOutline: params.config.cropperOutline,
|
|
14
|
+
}
|
|
15
|
+
this.next(config)
|
|
16
|
+
}
|
|
17
|
+
next(config) {
|
|
18
|
+
this.component = new DynamicMount({
|
|
19
|
+
componentProps: config,
|
|
20
|
+
vueComponent: baseCropper,
|
|
21
|
+
})
|
|
22
|
+
|
|
23
|
+
this.component.on('mounted', (component) => {
|
|
24
|
+
component.$on('cropperComplated', (res) => {
|
|
25
|
+
this.cropperComplated(res)
|
|
26
|
+
})
|
|
27
|
+
})
|
|
28
|
+
|
|
29
|
+
this.component.on('destroy', () => {
|
|
30
|
+
this.component = null
|
|
31
|
+
this.complatedCb = null
|
|
32
|
+
})
|
|
33
|
+
|
|
34
|
+
this.component.init()
|
|
35
|
+
}
|
|
36
|
+
cropperComplated = (res) => {
|
|
37
|
+
if (this.complatedCb) {
|
|
38
|
+
const time = Date.now()
|
|
39
|
+
this.complatedCb([
|
|
40
|
+
new File([res], `cropper-${time}`, {
|
|
41
|
+
type: res.type,
|
|
42
|
+
lastModified: time,
|
|
43
|
+
}),
|
|
44
|
+
])
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
const useCropper = new UseCropper()
|
|
50
|
+
|
|
51
|
+
export default useCropper
|
package/src/App.vue
CHANGED
|
@@ -1,13 +1,15 @@
|
|
|
1
1
|
<template>
|
|
2
2
|
<div id="app">
|
|
3
3
|
<div style="height: 100vh;">
|
|
4
|
-
<test></test>
|
|
5
|
-
<!-- <base-upload v-model="test"></base-upload>
|
|
4
|
+
<!-- <test></test> -->
|
|
6
5
|
|
|
7
|
-
<base-
|
|
8
|
-
:
|
|
9
|
-
|
|
10
|
-
|
|
6
|
+
<!-- <base-upload-item
|
|
7
|
+
:fileType="`img`"
|
|
8
|
+
:cropper="true"
|
|
9
|
+
@uploadEd="uploadEd"
|
|
10
|
+
ref="baseUploadItem"
|
|
11
|
+
></base-upload-item> -->
|
|
12
|
+
<base-upload v-model="test"></base-upload>
|
|
11
13
|
</div>
|
|
12
14
|
</div>
|
|
13
15
|
</template>
|
|
@@ -18,8 +20,9 @@ import test from './component/test.vue'
|
|
|
18
20
|
import BaseArea from '../packages/components/base/baseArea/baseArea.vue'
|
|
19
21
|
import BaseTimeLine from '../packages/components/base/baseTimeLine/baseTimeLine.vue'
|
|
20
22
|
import BaseUpload from '../packages/components/base/baseUpload/baseUpload.vue'
|
|
23
|
+
import BaseUploadItem from '../packages/components/base/baseUpload/baseUploadItem.vue'
|
|
21
24
|
export default {
|
|
22
|
-
components: { test, BaseArea, BaseTimeLine, BaseUpload },
|
|
25
|
+
components: { test, BaseArea, BaseTimeLine, BaseUpload, BaseUploadItem },
|
|
23
26
|
data() {
|
|
24
27
|
return {
|
|
25
28
|
test: [],
|
|
@@ -54,8 +57,16 @@ export default {
|
|
|
54
57
|
],
|
|
55
58
|
}
|
|
56
59
|
},
|
|
57
|
-
mounted() {
|
|
58
|
-
|
|
60
|
+
mounted() {
|
|
61
|
+
this.$nextTick(() => {
|
|
62
|
+
this.$refs.baseUploadItem.clickFile()
|
|
63
|
+
})
|
|
64
|
+
},
|
|
65
|
+
methods: {
|
|
66
|
+
uploadEd(res) {
|
|
67
|
+
console.log(res)
|
|
68
|
+
},
|
|
69
|
+
},
|
|
59
70
|
}
|
|
60
71
|
</script>
|
|
61
72
|
|