doway-coms 2.10.56 → 2.10.58
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/package.json +1 -1
- package/packages/BaseForm/src/index.vue +61 -18
package/package.json
CHANGED
|
@@ -1,11 +1,18 @@
|
|
|
1
1
|
<template>
|
|
2
|
-
<div :style="computedformStyle">
|
|
3
|
-
|
|
2
|
+
<div :style="computedformStyle" class="form-container">
|
|
3
|
+
<a-button v-if="showFold===true"
|
|
4
|
+
class="collapse-btn"
|
|
5
|
+
type="link"
|
|
6
|
+
@click="hiddenDetail = !hiddenDetail"
|
|
7
|
+
>
|
|
8
|
+
<a-icon :type="hiddenDetail ? 'down' : 'up'" class="collapse-icon" />
|
|
9
|
+
<!-- {{ hiddenDetail ? '展开' : '收起' }} -->
|
|
10
|
+
</a-button>
|
|
4
11
|
<div
|
|
5
12
|
:style="getFieldStyle(col)"
|
|
6
|
-
v-for="col in internalComputedHiddenCols"
|
|
13
|
+
v-for="(col,colIndex) in internalComputedHiddenCols"
|
|
7
14
|
:key="col.field"
|
|
8
|
-
v-show="hiddenDetail ?
|
|
15
|
+
v-show="hiddenDetail ? col.foldVisible===true : true"
|
|
9
16
|
>
|
|
10
17
|
<!-- 文本框输入控件 -->
|
|
11
18
|
<BaseInput
|
|
@@ -319,10 +326,10 @@
|
|
|
319
326
|
/>
|
|
320
327
|
</div>
|
|
321
328
|
<template v-if="layoutType==='default'">
|
|
322
|
-
|
|
323
|
-
<div class="d-form-item-ghost"></div>
|
|
329
|
+
<!-- <div class="d-form-item-ghost"></div>
|
|
324
330
|
<div class="d-form-item-ghost"></div>
|
|
325
331
|
<div class="d-form-item-ghost"></div>
|
|
332
|
+
<div class="d-form-item-ghost"></div> -->
|
|
326
333
|
</template>
|
|
327
334
|
</div>
|
|
328
335
|
</template>
|
|
@@ -367,6 +374,12 @@ export default {
|
|
|
367
374
|
},
|
|
368
375
|
name: 'BaseForm',
|
|
369
376
|
props: {
|
|
377
|
+
showFold:{
|
|
378
|
+
type: Boolean,
|
|
379
|
+
default: function () {
|
|
380
|
+
return false
|
|
381
|
+
},
|
|
382
|
+
},
|
|
370
383
|
layoutType: {
|
|
371
384
|
// 布局方式。默认布局是flex自动换行布局,grid网格固定布局
|
|
372
385
|
type: String,
|
|
@@ -433,9 +446,10 @@ export default {
|
|
|
433
446
|
computedformStyle(){
|
|
434
447
|
let layoutFormStyle = {
|
|
435
448
|
display: 'flex',
|
|
449
|
+
columnGap: this.flexGap+ 'px',
|
|
436
450
|
flexFlow: 'row wrap',
|
|
437
451
|
justifyContent: 'flex-start',
|
|
438
|
-
padding: '
|
|
452
|
+
padding: '5px 5px 0px 5px',
|
|
439
453
|
overflowY: 'auto'
|
|
440
454
|
}
|
|
441
455
|
|
|
@@ -447,7 +461,7 @@ export default {
|
|
|
447
461
|
display: 'grid',
|
|
448
462
|
gridTemplateRows: `repeat(${maxRow}, auto)`,
|
|
449
463
|
gridTemplateColumns: `repeat(${maxCol}, 1fr)`,
|
|
450
|
-
|
|
464
|
+
columnGrap: this.flexGap + 'px'
|
|
451
465
|
}
|
|
452
466
|
}
|
|
453
467
|
//默认布局
|
|
@@ -472,6 +486,7 @@ export default {
|
|
|
472
486
|
filters: {},
|
|
473
487
|
data() {
|
|
474
488
|
return {
|
|
489
|
+
flexGap:10,
|
|
475
490
|
hiddenDetail: false,
|
|
476
491
|
moment,
|
|
477
492
|
editFormName: '',
|
|
@@ -584,19 +599,25 @@ export default {
|
|
|
584
599
|
activated() {},
|
|
585
600
|
methods: {
|
|
586
601
|
getFieldStyle(colInfo){
|
|
602
|
+
// console.debug('0 0 calc('+colInfo.colSpan*250+'px -'+(colInfo.colSpan-1)*this.flexGap +'px)')
|
|
587
603
|
let fieldStyle ={
|
|
588
|
-
width: colInfo.colSpan ? ('calc('+colInfo.colSpan*
|
|
589
|
-
flex: (colInfo.colSpan
|
|
590
|
-
|
|
591
|
-
|
|
592
|
-
|
|
604
|
+
// width: colInfo.colSpan ? ('calc('+colInfo.colSpan*250+'px + '+(colInfo.colSpan-1)*16+'px)'): '250px',
|
|
605
|
+
flex: '0 0 ' + (colInfo.width && colInfo.width>200?colInfo.width:250)+'px', //colInfo.colSpan ? '0 0 '+(colInfo.colSpan*250+(colInfo.colSpan-1)*this.flexGap)+'px': '0 0 250px',
|
|
606
|
+
|
|
607
|
+
// flexGrow: 0,
|
|
608
|
+
// flexShrink: 0,
|
|
609
|
+
// flexBasis: colInfo.colSpan? (colInfo.colSpan*250)+'px':'250px',
|
|
610
|
+
// flexGrow: '1',
|
|
611
|
+
// flexShrink: '1',
|
|
612
|
+
// flexBasis:'250px', //colInfo.colSpan ? ('calc('+colInfo.colSpan*250+'px + '+(colInfo.colSpan-1)*16+'px)'): '250px',
|
|
593
613
|
marginTop: '0px',
|
|
594
|
-
marginRight: '8px',
|
|
614
|
+
// marginRight: '8px',
|
|
595
615
|
marginBottom: '0px',
|
|
596
|
-
marginLeft: '8px',
|
|
597
|
-
padding: '
|
|
598
|
-
minWidth: '
|
|
599
|
-
borderRadius: '6px'
|
|
616
|
+
// marginLeft: '8px',
|
|
617
|
+
// padding: '2px 8px 2px 8px',
|
|
618
|
+
// minWidth: '250px',
|
|
619
|
+
borderRadius: '6px',
|
|
620
|
+
maxWidth:'100%'
|
|
600
621
|
}
|
|
601
622
|
if(this.layoutType==='grid'){
|
|
602
623
|
fieldStyle = {
|
|
@@ -750,6 +771,9 @@ export default {
|
|
|
750
771
|
</script>
|
|
751
772
|
|
|
752
773
|
<style lang="less" scoped>
|
|
774
|
+
.form-container{
|
|
775
|
+
position: relative
|
|
776
|
+
}
|
|
753
777
|
.d-form-item-ghost{
|
|
754
778
|
visibility: hidden;
|
|
755
779
|
height: 0;
|
|
@@ -820,6 +844,25 @@ export default {
|
|
|
820
844
|
.form {
|
|
821
845
|
margin-left: 30px;
|
|
822
846
|
}
|
|
847
|
+
|
|
848
|
+
.collapse-btn {
|
|
849
|
+
position: absolute;
|
|
850
|
+
top: 0px;
|
|
851
|
+
right: 0px;
|
|
852
|
+
padding: 4px 8px;
|
|
853
|
+
z-index: 1000;
|
|
854
|
+
background-color: #fff; // 添加背景色使按钮更突出
|
|
855
|
+
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15); // 添加阴影效果
|
|
856
|
+
border-radius: 4px;
|
|
857
|
+
.collapse-icon {
|
|
858
|
+
transition: transform 0.3s;
|
|
859
|
+
}
|
|
860
|
+
&:hover {
|
|
861
|
+
background-color: #f0f0f0;
|
|
862
|
+
}
|
|
863
|
+
}
|
|
864
|
+
|
|
865
|
+
|
|
823
866
|
</style>
|
|
824
867
|
<style lang="less">
|
|
825
868
|
@import '../../styles/default.less';
|