three-trees-ui 1.0.93 → 1.0.95
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/LICENSE +21 -21
- package/lib/three-trees-ui.common.js +839 -624
- package/lib/three-trees-ui.css +1 -1
- package/lib/three-trees-ui.umd.js +839 -624
- package/lib/three-trees-ui.umd.min.js +1 -1
- package/package.json +1 -1
- package/packages/Collapse/src/HtCollapse.vue +4 -1
- package/packages/CustomDialog/src/customDialog.vue +43 -13
- package/packages/CustomDialog/src/main.vue +171 -115
- package/packages/DimensionSelector/src/main.vue +44 -43
- package/packages/JobSelector/src/main.vue +85 -81
- package/packages/OnlineForm/src/Form.vue +56 -4
- package/packages/OrgSelector/src/main.vue +87 -85
- package/packages/PostSelector/src/main.vue +86 -81
- package/packages/Preview/src/FrameViewer.vue +12 -6
- package/packages/RoleSelector/src/main.vue +87 -81
- package/packages/SubEditModeDialog/index.js +7 -0
- package/packages/SubEditModeDialog/src/main.vue +115 -0
- package/packages/UserSelector/src/main.vue +96 -101
- package/src/directive/formulas.js +7 -1
- package/src/index.js +2 -0
- package/src/mixins/onlineSubtable.js +50 -19
- package/src/styles/selector.scss +42 -2
- package/src/styles/variables.scss +6 -5
- package/src/utils.js +7 -0
|
@@ -16,33 +16,23 @@
|
|
|
16
16
|
@click="showDialog"
|
|
17
17
|
>
|
|
18
18
|
<div
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
:class="{
|
|
22
|
-
'el-select__tags_readonly': !inputWriteable,
|
|
23
|
-
'el-select__tags': inputWriteable,
|
|
24
|
-
}"
|
|
19
|
+
v-if="inputWriteable"
|
|
20
|
+
class="el-input el-input--suffix"
|
|
21
|
+
:class="{ 'custom-selector-mobile': isMobile }"
|
|
25
22
|
>
|
|
26
|
-
<
|
|
27
|
-
<
|
|
23
|
+
<div v-if="isMobile" class="custom-selector-mobile-box">
|
|
24
|
+
<div
|
|
28
25
|
v-for="(item, index) in demensions"
|
|
29
26
|
:key="index"
|
|
30
|
-
class="
|
|
31
|
-
@click.stop
|
|
27
|
+
class="common-selector-tag"
|
|
32
28
|
>
|
|
33
|
-
<span
|
|
34
|
-
<i
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
@click="handleRemove(item)"
|
|
38
|
-
></i>
|
|
39
|
-
</span>
|
|
40
|
-
</span>
|
|
41
|
-
</div>
|
|
42
|
-
<div v-if="inputWriteable" class="el-input el-input--suffix">
|
|
29
|
+
<span>{{ item.name }}</span>
|
|
30
|
+
<i class="el-icon-error" @click.stop="handleRemove(item)"></i>
|
|
31
|
+
</div>
|
|
32
|
+
</div>
|
|
43
33
|
<input
|
|
44
34
|
ref="inputEl"
|
|
45
|
-
v-model="
|
|
35
|
+
v-model="calcInputValue"
|
|
46
36
|
v-validate="inputValidate"
|
|
47
37
|
type="text"
|
|
48
38
|
readonly="readonly"
|
|
@@ -50,10 +40,6 @@
|
|
|
50
40
|
autocomplete="off"
|
|
51
41
|
class="el-input__inner"
|
|
52
42
|
:placeholder="placeholder"
|
|
53
|
-
:style="{
|
|
54
|
-
height: inputSuffixHeight + 'px',
|
|
55
|
-
lineHeight: inputSuffixHeight + 'px',
|
|
56
|
-
}"
|
|
57
43
|
/>
|
|
58
44
|
<span class="el-input__suffix">
|
|
59
45
|
<span class="el-input__suffix-inner">
|
|
@@ -62,9 +48,13 @@
|
|
|
62
48
|
</span>
|
|
63
49
|
</span>
|
|
64
50
|
</div>
|
|
51
|
+
<div v-else class="el-select__tags_readonly">
|
|
52
|
+
<span>{{ calcInputValue }}</span>
|
|
53
|
+
</div>
|
|
65
54
|
</div>
|
|
66
55
|
<ht-field-tail :field-name="inputName" :input-value="value" />
|
|
67
56
|
<el-dialog
|
|
57
|
+
v-if="dialogVisible"
|
|
68
58
|
title="选择维度"
|
|
69
59
|
:visible.sync="dialogVisible"
|
|
70
60
|
class="dialog-selector__wrapper"
|
|
@@ -216,6 +206,10 @@
|
|
|
216
206
|
mode: {
|
|
217
207
|
type: String,
|
|
218
208
|
},
|
|
209
|
+
formInputsDisplay: {
|
|
210
|
+
type: String,
|
|
211
|
+
default: 'inline',
|
|
212
|
+
},
|
|
219
213
|
},
|
|
220
214
|
data() {
|
|
221
215
|
return {
|
|
@@ -227,6 +221,17 @@
|
|
|
227
221
|
}
|
|
228
222
|
},
|
|
229
223
|
computed: {
|
|
224
|
+
calcInputValue: function() {
|
|
225
|
+
let name = ''
|
|
226
|
+
if (this.demensions) {
|
|
227
|
+
name = this.demensions
|
|
228
|
+
.map((k) => {
|
|
229
|
+
return k.name
|
|
230
|
+
})
|
|
231
|
+
.join(',')
|
|
232
|
+
}
|
|
233
|
+
return name
|
|
234
|
+
},
|
|
230
235
|
primaryField: function() {
|
|
231
236
|
return this.config && this.config.hasOwnProperty('id')
|
|
232
237
|
? 'id'
|
|
@@ -285,14 +290,8 @@
|
|
|
285
290
|
// 通过valueChange事件发布值变更消息
|
|
286
291
|
this.$emit('valueChange', ary.join(','), newVal)
|
|
287
292
|
setTimeout(() => {
|
|
288
|
-
if (newVal.length > 0) {
|
|
289
|
-
this.calacInputSuffixHeight()
|
|
290
|
-
} else {
|
|
291
|
-
this.inputSuffixHeight = 30
|
|
292
|
-
}
|
|
293
293
|
if (this.$refs.inputEl) {
|
|
294
|
-
this.$
|
|
295
|
-
this.$refs.inputEl.blur()
|
|
294
|
+
this.$validator.validate(this.inputName)
|
|
296
295
|
}
|
|
297
296
|
}, 10)
|
|
298
297
|
},
|
|
@@ -371,14 +370,13 @@
|
|
|
371
370
|
this.demensions = tmpAry
|
|
372
371
|
}
|
|
373
372
|
},
|
|
374
|
-
showDialog() {
|
|
373
|
+
async showDialog() {
|
|
375
374
|
if (!this.inputWriteable) {
|
|
376
375
|
return
|
|
377
376
|
}
|
|
378
377
|
this.dialogVisible = true
|
|
379
|
-
|
|
380
|
-
|
|
381
|
-
})
|
|
378
|
+
await this.$nextTick()
|
|
379
|
+
this.$refs.selector.onShow()
|
|
382
380
|
},
|
|
383
381
|
handleClose(done) {
|
|
384
382
|
this.$refs.selector.onHide()
|
|
@@ -401,12 +399,12 @@
|
|
|
401
399
|
},
|
|
402
400
|
// 更新当前输入框的高度来适配已选数据的高度
|
|
403
401
|
calacInputSuffixHeight() {
|
|
404
|
-
if (!this.$refs.tagSpans) return
|
|
405
|
-
if (this.$refs.tagSpans.offsetHeight) {
|
|
406
|
-
|
|
407
|
-
} else {
|
|
408
|
-
|
|
409
|
-
}
|
|
402
|
+
// if (!this.$refs.tagSpans) return
|
|
403
|
+
// if (this.$refs.tagSpans.offsetHeight) {
|
|
404
|
+
// this.inputSuffixHeight = this.$refs.tagSpans.offsetHeight + 5
|
|
405
|
+
// } else {
|
|
406
|
+
// this.inputSuffixHeight = 30
|
|
407
|
+
// }
|
|
410
408
|
},
|
|
411
409
|
},
|
|
412
410
|
}
|
|
@@ -427,7 +425,10 @@
|
|
|
427
425
|
position: relative;
|
|
428
426
|
top: 50%;
|
|
429
427
|
}
|
|
430
|
-
|
|
428
|
+
.el-input__inner {
|
|
429
|
+
height: 32px;
|
|
430
|
+
line-height: 32px;
|
|
431
|
+
}
|
|
431
432
|
.el-input__inner[aria-invalid='true'] {
|
|
432
433
|
border-color: #f56c6c;
|
|
433
434
|
}
|
|
@@ -16,33 +16,23 @@
|
|
|
16
16
|
@click="showDialog"
|
|
17
17
|
>
|
|
18
18
|
<div
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
:class="{
|
|
22
|
-
'el-select__tags_readonly': !inputWriteable,
|
|
23
|
-
'el-select__tags': inputWriteable,
|
|
24
|
-
}"
|
|
19
|
+
v-if="inputWriteable"
|
|
20
|
+
class="el-input el-input--suffix"
|
|
21
|
+
:class="{ 'custom-selector-mobile': isMobile }"
|
|
25
22
|
>
|
|
26
|
-
<
|
|
27
|
-
<
|
|
23
|
+
<div v-if="isMobile" class="custom-selector-mobile-box">
|
|
24
|
+
<div
|
|
28
25
|
v-for="(item, index) in selectors"
|
|
29
26
|
:key="index"
|
|
30
|
-
class="
|
|
31
|
-
@click.stop
|
|
27
|
+
class="common-selector-tag"
|
|
32
28
|
>
|
|
33
|
-
<span
|
|
34
|
-
<i
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
@click="handleRemove(item)"
|
|
38
|
-
></i>
|
|
39
|
-
</span>
|
|
40
|
-
</span>
|
|
41
|
-
</div>
|
|
42
|
-
<div v-if="inputWriteable" class="el-input el-input--suffix">
|
|
29
|
+
<span>{{ item.name }}</span>
|
|
30
|
+
<i class="el-icon-error" @click.stop="handleRemove(item)"></i>
|
|
31
|
+
</div>
|
|
32
|
+
</div>
|
|
43
33
|
<input
|
|
44
34
|
ref="inputEl"
|
|
45
|
-
v-model="
|
|
35
|
+
v-model="calcInputValue"
|
|
46
36
|
v-validate="inputValidate"
|
|
47
37
|
type="text"
|
|
48
38
|
readonly="readonly"
|
|
@@ -50,10 +40,6 @@
|
|
|
50
40
|
autocomplete="off"
|
|
51
41
|
class="el-input__inner"
|
|
52
42
|
:placeholder="placeholder"
|
|
53
|
-
:style="{
|
|
54
|
-
height: inputSuffixHeight + 'px',
|
|
55
|
-
lineHeight: inputSuffixHeight + 'px',
|
|
56
|
-
}"
|
|
57
43
|
/>
|
|
58
44
|
<span class="el-input__suffix">
|
|
59
45
|
<span class="el-input__suffix-inner">
|
|
@@ -62,49 +48,54 @@
|
|
|
62
48
|
</span>
|
|
63
49
|
</span>
|
|
64
50
|
</div>
|
|
51
|
+
<div v-else class="el-select__tags_readonly">
|
|
52
|
+
<span>{{ calcInputValue }}</span>
|
|
53
|
+
</div>
|
|
65
54
|
</div>
|
|
66
55
|
<ht-field-tail :field-name="inputName" :input-value="value" />
|
|
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
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
56
|
+
<template v-if="isDialogShow">
|
|
57
|
+
<job-selector-mobile-dialog
|
|
58
|
+
v-if="isMobile"
|
|
59
|
+
ref="jobSelectorMobileDialog"
|
|
60
|
+
v-model="selectors"
|
|
61
|
+
:search-placeholder="searchPlaceholder"
|
|
62
|
+
:single="single"
|
|
63
|
+
:data="data"
|
|
64
|
+
:pagination="pagination"
|
|
65
|
+
:select-label="selectLabel"
|
|
66
|
+
:quick-search-props="quickSearchProps"
|
|
67
|
+
:append-to-body="appendToBody"
|
|
68
|
+
:title="title"
|
|
69
|
+
:primary-field="primaryField"
|
|
70
|
+
@search="(word) => $emit('search', word)"
|
|
71
|
+
@reset="() => $emit('reset')"
|
|
72
|
+
@row-click="(row) => $emit('row-click', row)"
|
|
73
|
+
@select-data="(data) => $emit('select-data', data)"
|
|
74
|
+
@page-change="(page) => $emit('page-change', page)"
|
|
75
|
+
/>
|
|
76
|
+
<job-selector-dialog
|
|
77
|
+
v-else
|
|
78
|
+
ref="jobSelectorDialog"
|
|
79
|
+
v-model="selectors"
|
|
80
|
+
:search-placeholder="searchPlaceholder"
|
|
81
|
+
:single="single"
|
|
82
|
+
:data="data"
|
|
83
|
+
:table-columns="tableColumns"
|
|
84
|
+
:pagination="pagination"
|
|
85
|
+
:select-label="selectLabel"
|
|
86
|
+
:quick-search-props="quickSearchProps"
|
|
87
|
+
:append-to-body="appendToBody"
|
|
88
|
+
:title="title"
|
|
89
|
+
:primary-field="primaryField"
|
|
90
|
+
:mode="mode"
|
|
91
|
+
@search="(word) => $emit('search', word)"
|
|
92
|
+
@reset="() => $emit('reset')"
|
|
93
|
+
@row-click="(row) => $emit('row-click', row)"
|
|
94
|
+
@select-data="(data) => $emit('select-data', data)"
|
|
95
|
+
@page-change="(page) => $emit('page-change', page)"
|
|
96
|
+
@size-change="(size) => $emit('size-change', size)"
|
|
97
|
+
/>
|
|
98
|
+
</template>
|
|
108
99
|
</div>
|
|
109
100
|
</template>
|
|
110
101
|
<script>
|
|
@@ -181,11 +172,23 @@
|
|
|
181
172
|
},
|
|
182
173
|
data() {
|
|
183
174
|
return {
|
|
175
|
+
isDialogShow: false,
|
|
184
176
|
inputSuffixHeight: 30,
|
|
185
177
|
selectors: [],
|
|
186
178
|
}
|
|
187
179
|
},
|
|
188
180
|
computed: {
|
|
181
|
+
calcInputValue: function() {
|
|
182
|
+
let name = ''
|
|
183
|
+
if (this.selectors) {
|
|
184
|
+
name = this.selectors
|
|
185
|
+
.map((k) => {
|
|
186
|
+
return k.name
|
|
187
|
+
})
|
|
188
|
+
.join(',')
|
|
189
|
+
}
|
|
190
|
+
return name
|
|
191
|
+
},
|
|
189
192
|
primaryField: function() {
|
|
190
193
|
return this.config && this.config.hasOwnProperty('id')
|
|
191
194
|
? 'id'
|
|
@@ -235,14 +238,8 @@
|
|
|
235
238
|
// 通过valueChange事件发布值变更消息
|
|
236
239
|
this.$emit('valueChange', ary.join(','), newVal)
|
|
237
240
|
setTimeout(() => {
|
|
238
|
-
if (newVal.length > 0) {
|
|
239
|
-
this.calacInputSuffixHeight()
|
|
240
|
-
} else {
|
|
241
|
-
this.inputSuffixHeight = 30
|
|
242
|
-
}
|
|
243
241
|
if (this.$refs.inputEl) {
|
|
244
|
-
this.$
|
|
245
|
-
this.$refs.inputEl.blur()
|
|
242
|
+
this.$validator.validate(this.inputName)
|
|
246
243
|
}
|
|
247
244
|
}, 10)
|
|
248
245
|
},
|
|
@@ -296,10 +293,14 @@
|
|
|
296
293
|
this.selectors = tmpAry
|
|
297
294
|
}
|
|
298
295
|
},
|
|
299
|
-
showDialog() {
|
|
296
|
+
async showDialog() {
|
|
300
297
|
if (!this.inputWriteable) {
|
|
301
298
|
return
|
|
302
299
|
}
|
|
300
|
+
if (this.isDialogShow === false) {
|
|
301
|
+
this.isDialogShow = true
|
|
302
|
+
await this.$nextTick()
|
|
303
|
+
}
|
|
303
304
|
if (this.isMobile) {
|
|
304
305
|
this.$refs.jobSelectorMobileDialog.showDialog()
|
|
305
306
|
} else {
|
|
@@ -315,12 +316,12 @@
|
|
|
315
316
|
},
|
|
316
317
|
// 更新当前输入框的高度来适配已选数据的高度
|
|
317
318
|
calacInputSuffixHeight() {
|
|
318
|
-
if (!this.$refs.tagSpans) return
|
|
319
|
-
if (this.$refs.tagSpans.offsetHeight) {
|
|
320
|
-
|
|
321
|
-
} else {
|
|
322
|
-
|
|
323
|
-
}
|
|
319
|
+
// if (!this.$refs.tagSpans) return
|
|
320
|
+
// if (this.$refs.tagSpans.offsetHeight) {
|
|
321
|
+
// this.inputSuffixHeight = this.$refs.tagSpans.offsetHeight + 5
|
|
322
|
+
// } else {
|
|
323
|
+
// this.inputSuffixHeight = 30
|
|
324
|
+
// }
|
|
324
325
|
},
|
|
325
326
|
},
|
|
326
327
|
}
|
|
@@ -335,7 +336,10 @@
|
|
|
335
336
|
position: relative;
|
|
336
337
|
top: 50%;
|
|
337
338
|
}
|
|
338
|
-
|
|
339
|
+
.el-input__inner {
|
|
340
|
+
height: 32px;
|
|
341
|
+
line-height: 32px;
|
|
342
|
+
}
|
|
339
343
|
.el-input__inner[aria-invalid='true'] {
|
|
340
344
|
border-color: #f56c6c;
|
|
341
345
|
}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
<template>
|
|
2
|
-
<div name="online-form">
|
|
2
|
+
<div name="online-form" :class="{ 'is-mobile-online-form': isMobile }">
|
|
3
3
|
<el-skeleton v-if="loadStatus == 0" :rows="6" animated />
|
|
4
4
|
<component
|
|
5
|
+
:is="currentComponent"
|
|
5
6
|
v-else-if="loadStatus > 0"
|
|
6
|
-
v-bind:is="currentComponent"
|
|
7
7
|
:name="formName"
|
|
8
8
|
:data="data"
|
|
9
9
|
:permission="permission"
|
|
@@ -31,12 +31,13 @@
|
|
|
31
31
|
import onlineSubtable from '@/mixins/onlineSubtable.js'
|
|
32
32
|
import regionValidator from '@/mixins/regionValidator.js'
|
|
33
33
|
import emitter from '@/mixins/emitter.js'
|
|
34
|
+
import mobileMode from '@/mixins/mobileMode.js'
|
|
34
35
|
|
|
35
36
|
import Vue from 'vue'
|
|
36
37
|
export default {
|
|
37
38
|
name: 'HtOnlineForm',
|
|
38
39
|
componentName: 'HtOnlineForm',
|
|
39
|
-
mixins: [regionValidator, emitter],
|
|
40
|
+
mixins: [regionValidator, emitter, mobileMode],
|
|
40
41
|
props: {
|
|
41
42
|
html: String,
|
|
42
43
|
data: Object,
|
|
@@ -182,6 +183,11 @@
|
|
|
182
183
|
default: false,
|
|
183
184
|
},
|
|
184
185
|
},
|
|
186
|
+
data() {
|
|
187
|
+
return {
|
|
188
|
+
subDivCollapse: [],
|
|
189
|
+
}
|
|
190
|
+
},
|
|
185
191
|
template: this.html,
|
|
186
192
|
})
|
|
187
193
|
},
|
|
@@ -189,6 +195,29 @@
|
|
|
189
195
|
}
|
|
190
196
|
</script>
|
|
191
197
|
<style lang="scss">
|
|
198
|
+
.is-mobile-online-form {
|
|
199
|
+
.ht-form-item {
|
|
200
|
+
.el-form-item__label {
|
|
201
|
+
width: 76px !important;
|
|
202
|
+
overflow: hidden;
|
|
203
|
+
text-overflow: ellipsis;
|
|
204
|
+
white-space: nowrap;
|
|
205
|
+
text-align: left;
|
|
206
|
+
> span {
|
|
207
|
+
display: inline-block;
|
|
208
|
+
max-width: 100%;
|
|
209
|
+
font-size: 14px;
|
|
210
|
+
color: #656a72;
|
|
211
|
+
margin-left: 0 !important;
|
|
212
|
+
overflow: hidden;
|
|
213
|
+
text-overflow: ellipsis;
|
|
214
|
+
}
|
|
215
|
+
}
|
|
216
|
+
.el-form-item__content {
|
|
217
|
+
margin-left: 76px !important;
|
|
218
|
+
}
|
|
219
|
+
}
|
|
220
|
+
}
|
|
192
221
|
.transition {
|
|
193
222
|
outline: 1px dotted #85a5ff;
|
|
194
223
|
outline-width: 2px;
|
|
@@ -308,7 +337,7 @@
|
|
|
308
337
|
width: 100%;
|
|
309
338
|
}
|
|
310
339
|
.el-input {
|
|
311
|
-
width: 100
|
|
340
|
+
width: 100%;
|
|
312
341
|
}
|
|
313
342
|
.amap-page-container {
|
|
314
343
|
.amap-toolbar,
|
|
@@ -441,6 +470,7 @@
|
|
|
441
470
|
}
|
|
442
471
|
|
|
443
472
|
.el-icon-copy-document,
|
|
473
|
+
.el-icon-edit,
|
|
444
474
|
.el-icon-delete {
|
|
445
475
|
display: inline-block;
|
|
446
476
|
border: 1px solid #409eff;
|
|
@@ -449,6 +479,9 @@
|
|
|
449
479
|
color: #409eff;
|
|
450
480
|
background: #fff;
|
|
451
481
|
}
|
|
482
|
+
.el-button + .el-button {
|
|
483
|
+
margin-left: 4px;
|
|
484
|
+
}
|
|
452
485
|
}
|
|
453
486
|
|
|
454
487
|
.el-icon-arrow-right:before {
|
|
@@ -522,6 +555,7 @@
|
|
|
522
555
|
}
|
|
523
556
|
|
|
524
557
|
.el-icon-copy-document,
|
|
558
|
+
.el-icon-edit,
|
|
525
559
|
.el-icon-delete {
|
|
526
560
|
display: inline-block;
|
|
527
561
|
border: 1px solid #409eff;
|
|
@@ -555,6 +589,24 @@
|
|
|
555
589
|
}
|
|
556
590
|
}
|
|
557
591
|
}
|
|
592
|
+
.sonDetail_lable_box,
|
|
593
|
+
.sonDetail_lable_value {
|
|
594
|
+
width: calc(100% - 70px);
|
|
595
|
+
.sonDetail_lable_item {
|
|
596
|
+
font-weight: 500;
|
|
597
|
+
}
|
|
598
|
+
> div {
|
|
599
|
+
flex: 1;
|
|
600
|
+
display: -webkit-box;
|
|
601
|
+
-webkit-box-orient: vertical;
|
|
602
|
+
-webkit-line-clamp: 2;
|
|
603
|
+
overflow: hidden;
|
|
604
|
+
text-overflow: ellipsis;
|
|
605
|
+
word-break: break-all;
|
|
606
|
+
line-height: normal;
|
|
607
|
+
text-align: center;
|
|
608
|
+
}
|
|
609
|
+
}
|
|
558
610
|
}
|
|
559
611
|
|
|
560
612
|
::v-deep .el-table__header {
|