meixioacomponent 0.3.41 → 0.3.45
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 +798 -750
- package/lib/meixioacomponent.umd.js +798 -750
- package/lib/meixioacomponent.umd.min.js +28 -28
- package/lib/style/element/index.css +7 -22
- package/lib/style/index.less +5 -1
- package/package.json +1 -1
- package/packages/components/base/baseArea/baseArea.vue +109 -108
- package/packages/components/base/baseIcon/index.vue +49 -45
- package/packages/components/base/baseLineInfoGroup/baseLineInfoGroup.vue +17 -14
- package/packages/components/base/baseLineInfoItem/baseLineInfoItem.vue +54 -31
- package/packages/components/base/basePopoverButton/index.vue +15 -19
- package/packages/components/base/baseUpload/baseUpload.vue +15 -12
- package/packages/components/base/baseUpload/baseUploadItem.vue +73 -70
- package/packages/components/base/baseUpload/mixins.js +10 -3
- package/packages/components/proForm/proForm/pro_form_item.vue +5 -1
- package/packages/components/proPageTable/oa_pro_colum_config.vue +81 -92
- package/packages/components/proPageTable/oa_pro_handle_table_border.vue +45 -38
- package/packages/components/proPageTable/oa_pro_table-header.vue +23 -21
- package/packages/components/proPageTable/oa_pro_table.vue +120 -98
- package/packages/components/style/element/index.css +7 -22
- package/packages/components/style/index.less +5 -1
- package/src/App.vue +34 -13
- package/src/component/test.vue +46 -190
- package/src/config/CompanyInfoConfig.js +26 -0
- package/src/config/linkViewClass.js +71 -0
- package/src/main.js +1 -1
- package/src/test.js +3 -3
|
@@ -26,18 +26,18 @@
|
|
|
26
26
|
</template>
|
|
27
27
|
|
|
28
28
|
<script>
|
|
29
|
-
import baseLineInfoItemVue from
|
|
29
|
+
import baseLineInfoItemVue from '../baseLineInfoItem/baseLineInfoItem.vue'
|
|
30
30
|
//
|
|
31
|
-
import { ArrayChunk } from
|
|
31
|
+
import { ArrayChunk } from '../../../utils/utils'
|
|
32
32
|
export default {
|
|
33
|
-
name:
|
|
33
|
+
name: 'baseLineInfoGroup',
|
|
34
34
|
data() {
|
|
35
35
|
return {
|
|
36
36
|
labelWidth: null,
|
|
37
|
-
}
|
|
37
|
+
}
|
|
38
38
|
},
|
|
39
39
|
created() {
|
|
40
|
-
this.init()
|
|
40
|
+
this.init()
|
|
41
41
|
},
|
|
42
42
|
components: {
|
|
43
43
|
baseLineInfoItemVue,
|
|
@@ -45,7 +45,7 @@ export default {
|
|
|
45
45
|
props: {
|
|
46
46
|
valueAlign: {
|
|
47
47
|
type: String,
|
|
48
|
-
default:
|
|
48
|
+
default: 'left',
|
|
49
49
|
},
|
|
50
50
|
lineNumber: {
|
|
51
51
|
type: Number,
|
|
@@ -58,25 +58,24 @@ export default {
|
|
|
58
58
|
},
|
|
59
59
|
computed: {
|
|
60
60
|
mountedList() {
|
|
61
|
-
return ArrayChunk(this.$props.infoList, this.$props.lineNumber)
|
|
61
|
+
return ArrayChunk(this.$props.infoList, this.$props.lineNumber)
|
|
62
62
|
},
|
|
63
63
|
},
|
|
64
64
|
methods: {
|
|
65
65
|
init() {
|
|
66
|
-
let _inforList = this.$props.infoList
|
|
66
|
+
let _inforList = this.$props.infoList
|
|
67
67
|
_inforList.forEach((item, index) => {
|
|
68
|
-
let width = item.label.length * 14 + (item.icon ? 42 : 0)
|
|
68
|
+
let width = item.label.length * 14 + (item.icon ? 42 : 0)
|
|
69
69
|
if (this.labelWidth < width) {
|
|
70
|
-
this.labelWidth = width
|
|
70
|
+
this.labelWidth = width
|
|
71
71
|
}
|
|
72
|
-
})
|
|
73
|
-
//console.log(this.labelWidth);
|
|
72
|
+
})
|
|
74
73
|
},
|
|
75
74
|
infoclickicon(item) {
|
|
76
|
-
this.$emit(
|
|
75
|
+
this.$emit('infoclickicon', item)
|
|
77
76
|
},
|
|
78
77
|
},
|
|
79
|
-
}
|
|
78
|
+
}
|
|
80
79
|
</script>
|
|
81
80
|
|
|
82
81
|
<style lang="less" scoped>
|
|
@@ -88,6 +87,10 @@ export default {
|
|
|
88
87
|
align-items: center;
|
|
89
88
|
flex-flow: row nowrap;
|
|
90
89
|
justify-content: flex-start;
|
|
90
|
+
margin-bottom: calc(var(--margin-4) * 2);
|
|
91
|
+
&:last-of-type {
|
|
92
|
+
margin-bottom: 0px;
|
|
93
|
+
}
|
|
91
94
|
}
|
|
92
95
|
}
|
|
93
96
|
</style>
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
:size="`l`"
|
|
9
9
|
:event="event"
|
|
10
10
|
@iconClick="iconClick"
|
|
11
|
-
style="margin-right: var(--margin-5)"
|
|
11
|
+
style="margin-right: var(--margin-5);"
|
|
12
12
|
></base-icon>
|
|
13
13
|
<span>{{ label }}</span>
|
|
14
14
|
</div>
|
|
@@ -18,10 +18,10 @@
|
|
|
18
18
|
>
|
|
19
19
|
<el-tooltip
|
|
20
20
|
effect="dark"
|
|
21
|
-
placement="top"
|
|
22
21
|
v-if="!useSlot"
|
|
23
22
|
:content="`${value}`"
|
|
24
23
|
:visible-arrow="false"
|
|
24
|
+
:placement="tooltipPlacement"
|
|
25
25
|
>
|
|
26
26
|
<span
|
|
27
27
|
class="infor-value_text"
|
|
@@ -29,8 +29,8 @@
|
|
|
29
29
|
textAlign: valueAlign,
|
|
30
30
|
}"
|
|
31
31
|
>
|
|
32
|
-
{{ value }}
|
|
33
|
-
>
|
|
32
|
+
{{ value }}
|
|
33
|
+
</span>
|
|
34
34
|
</el-tooltip>
|
|
35
35
|
|
|
36
36
|
<div
|
|
@@ -48,15 +48,15 @@
|
|
|
48
48
|
|
|
49
49
|
<script>
|
|
50
50
|
export default {
|
|
51
|
-
name:
|
|
51
|
+
name: 'baseLineInfoItem',
|
|
52
52
|
data() {
|
|
53
53
|
return {
|
|
54
54
|
isChildren: false,
|
|
55
|
-
}
|
|
55
|
+
}
|
|
56
56
|
},
|
|
57
57
|
created() {
|
|
58
|
-
if (this.$parent.$options.name ==
|
|
59
|
-
this.isChildren = true
|
|
58
|
+
if (this.$parent.$options.name == 'baseLineInfoGroup') {
|
|
59
|
+
this.isChildren = true
|
|
60
60
|
}
|
|
61
61
|
},
|
|
62
62
|
props: {
|
|
@@ -81,7 +81,7 @@ export default {
|
|
|
81
81
|
},
|
|
82
82
|
valueAlign: {
|
|
83
83
|
type: String,
|
|
84
|
-
default:
|
|
84
|
+
default: 'left',
|
|
85
85
|
},
|
|
86
86
|
labelWidth: {
|
|
87
87
|
type: Number,
|
|
@@ -89,45 +89,65 @@ export default {
|
|
|
89
89
|
},
|
|
90
90
|
computed: {
|
|
91
91
|
_labelWidth() {
|
|
92
|
-
let width = null
|
|
92
|
+
let width = null
|
|
93
93
|
if (this.isChildren) {
|
|
94
|
-
width = this.$parent.labelWidth
|
|
94
|
+
width = this.$parent.labelWidth
|
|
95
95
|
} else {
|
|
96
|
-
width = this.$props.labelWidth
|
|
96
|
+
width = this.$props.labelWidth
|
|
97
97
|
}
|
|
98
|
-
return width
|
|
98
|
+
return width
|
|
99
99
|
},
|
|
100
100
|
|
|
101
101
|
slotAlignStyle() {
|
|
102
|
-
let value =
|
|
103
|
-
let align = this.$props.valueAlign
|
|
102
|
+
let value = ''
|
|
103
|
+
let align = this.$props.valueAlign
|
|
104
104
|
switch (align) {
|
|
105
|
-
case
|
|
106
|
-
value = `flex-start
|
|
107
|
-
break
|
|
108
|
-
case
|
|
109
|
-
value = `center
|
|
110
|
-
break
|
|
111
|
-
case
|
|
112
|
-
value =
|
|
113
|
-
break
|
|
105
|
+
case 'left':
|
|
106
|
+
value = `flex-start`
|
|
107
|
+
break
|
|
108
|
+
case 'center':
|
|
109
|
+
value = `center`
|
|
110
|
+
break
|
|
111
|
+
case 'right':
|
|
112
|
+
value = 'flex-end'
|
|
113
|
+
break
|
|
114
114
|
|
|
115
115
|
default:
|
|
116
|
-
break
|
|
116
|
+
break
|
|
117
117
|
}
|
|
118
|
-
return value
|
|
118
|
+
return value
|
|
119
|
+
},
|
|
120
|
+
|
|
121
|
+
tooltipPlacement() {
|
|
122
|
+
let value = ''
|
|
123
|
+
let align = this.$props.valueAlign
|
|
124
|
+
switch (align) {
|
|
125
|
+
case 'left':
|
|
126
|
+
value = `top-start`
|
|
127
|
+
break
|
|
128
|
+
case 'center':
|
|
129
|
+
value = `top`
|
|
130
|
+
break
|
|
131
|
+
case 'right':
|
|
132
|
+
value = 'top-end'
|
|
133
|
+
break
|
|
134
|
+
|
|
135
|
+
default:
|
|
136
|
+
break
|
|
137
|
+
}
|
|
138
|
+
return value
|
|
119
139
|
},
|
|
120
140
|
},
|
|
121
141
|
methods: {
|
|
122
142
|
iconClick() {
|
|
123
143
|
if (this.isChildren) {
|
|
124
|
-
this.$emit(
|
|
144
|
+
this.$emit('infoclickicon')
|
|
125
145
|
} else {
|
|
126
|
-
this.$emit(
|
|
146
|
+
this.$emit('infoclickicon', this.$props)
|
|
127
147
|
}
|
|
128
148
|
},
|
|
129
149
|
},
|
|
130
|
-
}
|
|
150
|
+
}
|
|
131
151
|
</script>
|
|
132
152
|
|
|
133
153
|
<style lang="less" scoped>
|
|
@@ -137,7 +157,12 @@ export default {
|
|
|
137
157
|
display: flex;
|
|
138
158
|
align-items: center;
|
|
139
159
|
flex-flow: row nowrap;
|
|
160
|
+
margin-bottom: var(--margin-4);
|
|
140
161
|
justify-content: space-between;
|
|
162
|
+
|
|
163
|
+
&:last-of-type {
|
|
164
|
+
margin-bottom: 0px;
|
|
165
|
+
}
|
|
141
166
|
.infor-label {
|
|
142
167
|
display: flex;
|
|
143
168
|
align-items: center;
|
|
@@ -148,8 +173,6 @@ export default {
|
|
|
148
173
|
}
|
|
149
174
|
.infor-value {
|
|
150
175
|
box-sizing: border-box;
|
|
151
|
-
padding: var(--padding-5) 0px;
|
|
152
|
-
padding-left: var(--padding-5);
|
|
153
176
|
.infor-value_text {
|
|
154
177
|
vertical-align: middle;
|
|
155
178
|
color: var(--font-color-d);
|
|
@@ -19,6 +19,7 @@
|
|
|
19
19
|
:disabled="disabled"
|
|
20
20
|
class="popover-button"
|
|
21
21
|
:type="module ? 'selected' : 'info'"
|
|
22
|
+
@click.stop="iconClick"
|
|
22
23
|
:class="{ 'is-single': !buttonText && buttonIcon }"
|
|
23
24
|
>
|
|
24
25
|
<base-icon
|
|
@@ -32,7 +33,7 @@
|
|
|
32
33
|
@iconClick="iconClick"
|
|
33
34
|
:color="module ? 'text-white' : 'd'"
|
|
34
35
|
></base-icon>
|
|
35
|
-
<span class="inner-span" v-if="buttonText">
|
|
36
|
+
<span class="inner-span" v-if="buttonText">{{ buttonText }}</span>
|
|
36
37
|
</el-button>
|
|
37
38
|
<template slot="reference" v-else>
|
|
38
39
|
<slot name="popoverReference"></slot>
|
|
@@ -42,9 +43,9 @@
|
|
|
42
43
|
|
|
43
44
|
<script>
|
|
44
45
|
export default {
|
|
45
|
-
name:
|
|
46
|
+
name: 'basePopoverButton',
|
|
46
47
|
data() {
|
|
47
|
-
return {}
|
|
48
|
+
return {}
|
|
48
49
|
},
|
|
49
50
|
|
|
50
51
|
props: {
|
|
@@ -57,17 +58,17 @@ export default {
|
|
|
57
58
|
// click/focus/hover/manual
|
|
58
59
|
trigger: {
|
|
59
60
|
type: String,
|
|
60
|
-
default:
|
|
61
|
+
default: 'click',
|
|
61
62
|
},
|
|
62
63
|
// 位置
|
|
63
64
|
// top/top-start/top-end/bottom/bottom-start/bottom-end/left/left-start/left-end/right/right-start/right-end
|
|
64
65
|
placement: {
|
|
65
|
-
default:
|
|
66
|
+
default: 'bottom',
|
|
66
67
|
type: String,
|
|
67
68
|
},
|
|
68
69
|
// button 按钮的大小
|
|
69
70
|
buttonSize: {
|
|
70
|
-
default:
|
|
71
|
+
default: 'small',
|
|
71
72
|
},
|
|
72
73
|
// 控制显影的参数
|
|
73
74
|
value: {
|
|
@@ -77,7 +78,7 @@ export default {
|
|
|
77
78
|
// button文字内容
|
|
78
79
|
buttonText: {
|
|
79
80
|
type: String,
|
|
80
|
-
default:
|
|
81
|
+
default: '',
|
|
81
82
|
},
|
|
82
83
|
|
|
83
84
|
// icon的类名
|
|
@@ -88,7 +89,7 @@ export default {
|
|
|
88
89
|
|
|
89
90
|
iconClass: {
|
|
90
91
|
type: String,
|
|
91
|
-
default:
|
|
92
|
+
default: 'meixi',
|
|
92
93
|
},
|
|
93
94
|
|
|
94
95
|
template: {
|
|
@@ -99,33 +100,29 @@ export default {
|
|
|
99
100
|
computed: {
|
|
100
101
|
module: {
|
|
101
102
|
set(val) {
|
|
102
|
-
this.$emit(
|
|
103
|
+
this.$emit('input', val)
|
|
103
104
|
},
|
|
104
105
|
get() {
|
|
105
|
-
return this.$props.value
|
|
106
|
+
return this.$props.value
|
|
106
107
|
},
|
|
107
108
|
},
|
|
108
109
|
},
|
|
109
110
|
methods: {
|
|
110
111
|
popoverShow() {
|
|
111
|
-
this.$emit(
|
|
112
|
+
this.$emit('popoverShow')
|
|
112
113
|
},
|
|
113
114
|
popoverHide() {
|
|
114
|
-
this.$emit(
|
|
115
|
+
this.$emit('poporverHide')
|
|
115
116
|
},
|
|
116
117
|
iconClick() {
|
|
117
|
-
this.
|
|
118
|
+
this.$refs.popover.doShow()
|
|
118
119
|
},
|
|
119
120
|
},
|
|
120
|
-
}
|
|
121
|
+
}
|
|
121
122
|
</script>
|
|
122
123
|
|
|
123
124
|
<style lang="less" scoped>
|
|
124
|
-
.popover-content {
|
|
125
|
-
}
|
|
126
125
|
.popover-button {
|
|
127
|
-
.button-icon {
|
|
128
|
-
}
|
|
129
126
|
/deep/ span {
|
|
130
127
|
display: flex;
|
|
131
128
|
align-items: center;
|
|
@@ -139,6 +136,5 @@ export default {
|
|
|
139
136
|
.is-single {
|
|
140
137
|
border: none;
|
|
141
138
|
padding: 7px !important;
|
|
142
|
-
background: var(--color-gray-m);
|
|
143
139
|
}
|
|
144
140
|
</style>
|
|
@@ -4,6 +4,7 @@
|
|
|
4
4
|
<baseUploadItemVue
|
|
5
5
|
:key="index"
|
|
6
6
|
:type="`img`"
|
|
7
|
+
:isGroup="true"
|
|
7
8
|
:uploadItem="item"
|
|
8
9
|
v-for="(item, index) in module"
|
|
9
10
|
@handleDeleteUploadItem="handleDeleteUploadItem(index)"
|
|
@@ -12,6 +13,7 @@
|
|
|
12
13
|
:type="`upload`"
|
|
13
14
|
v-show="!isMax"
|
|
14
15
|
ref="itemUpload"
|
|
16
|
+
:isGroup="true"
|
|
15
17
|
:fileType="fileType"
|
|
16
18
|
:uploadType="`multiple`"
|
|
17
19
|
@inputChange="inputChange"
|
|
@@ -24,20 +26,21 @@
|
|
|
24
26
|
</template>
|
|
25
27
|
|
|
26
28
|
<script>
|
|
27
|
-
import baseSkeletonVue from
|
|
28
|
-
import baseUploadItemVue from
|
|
29
|
+
import baseSkeletonVue from '../baseSkeleton/baseSkeleton.vue'
|
|
30
|
+
import baseUploadItemVue from './baseUploadItem.vue'
|
|
29
31
|
//
|
|
30
|
-
import { baseUploadMixins } from
|
|
32
|
+
import { baseUploadMixins } from './mixins'
|
|
31
33
|
export default {
|
|
32
|
-
name:
|
|
34
|
+
name: 'baseUpload',
|
|
33
35
|
data() {
|
|
34
36
|
return {
|
|
37
|
+
isGroup: true,
|
|
35
38
|
uploadLoading: false,
|
|
36
|
-
}
|
|
39
|
+
}
|
|
37
40
|
},
|
|
38
41
|
beforeDestroy() {
|
|
39
42
|
if (this.dynamicmount) {
|
|
40
|
-
this.uploadEd()
|
|
43
|
+
this.uploadEd()
|
|
41
44
|
}
|
|
42
45
|
},
|
|
43
46
|
mixins: [baseUploadMixins],
|
|
@@ -48,7 +51,7 @@ export default {
|
|
|
48
51
|
props: {
|
|
49
52
|
textNotic: {
|
|
50
53
|
type: String,
|
|
51
|
-
default:
|
|
54
|
+
default: '点击+上传图片',
|
|
52
55
|
},
|
|
53
56
|
max: {
|
|
54
57
|
type: Number,
|
|
@@ -60,25 +63,25 @@ export default {
|
|
|
60
63
|
},
|
|
61
64
|
fileType: {
|
|
62
65
|
type: String,
|
|
63
|
-
default:
|
|
66
|
+
default: 'img',
|
|
64
67
|
},
|
|
65
68
|
},
|
|
66
69
|
computed: {
|
|
67
70
|
module: {
|
|
68
71
|
set(val) {
|
|
69
|
-
this.$emit(
|
|
72
|
+
this.$emit('input', val)
|
|
70
73
|
},
|
|
71
74
|
get() {
|
|
72
|
-
return this.$props.value
|
|
75
|
+
return this.$props.value
|
|
73
76
|
},
|
|
74
77
|
},
|
|
75
78
|
},
|
|
76
79
|
methods: {
|
|
77
80
|
handleDeleteUploadItem(index) {
|
|
78
|
-
this.module.splice(index, 1)
|
|
81
|
+
this.module.splice(index, 1)
|
|
79
82
|
},
|
|
80
83
|
},
|
|
81
|
-
}
|
|
84
|
+
}
|
|
82
85
|
</script>
|
|
83
86
|
|
|
84
87
|
<style lang="less" scoped>
|