大屏表格组件
This commit is contained in:
@@ -33,6 +33,7 @@
|
|||||||
<AiDvTable
|
<AiDvTable
|
||||||
v-else-if="data.type === 'AiDvTable'"
|
v-else-if="data.type === 'AiDvTable'"
|
||||||
:heigth="'100%'"
|
:heigth="'100%'"
|
||||||
|
:stripe="data.stripe"
|
||||||
:isShowIndex="data.isShowIndex"
|
:isShowIndex="data.isShowIndex"
|
||||||
:data="values">
|
:data="values">
|
||||||
</AiDvTable>
|
</AiDvTable>
|
||||||
|
|||||||
@@ -6,17 +6,23 @@
|
|||||||
:key="index"
|
:key="index"
|
||||||
:style="{
|
:style="{
|
||||||
width: item.width + 'px',
|
width: item.width + 'px',
|
||||||
|
textAlign: item.align,
|
||||||
flex: item.width ? 'inherit' : 1
|
flex: item.width ? 'inherit' : 1
|
||||||
}">
|
}">
|
||||||
{{ item.v }}
|
{{ item.v }}
|
||||||
</span>
|
</span>
|
||||||
</div>
|
</div>
|
||||||
<div class="body">
|
<div class="body">
|
||||||
<div class="row" v-for="(item, index) in body" :key="index">
|
<div class="row" v-for="(item, index) in body" :class="[stripe ? 'stripe' : '']" :key="index">
|
||||||
<div
|
<div
|
||||||
v-for="(column, i) in item"
|
v-for="(column, i) in item"
|
||||||
:key="i"
|
:key="i"
|
||||||
:style="{color: column.color, width: column.width + 'px', flex: column.width ? 'inherit' : 1}">
|
:style="{
|
||||||
|
color: column.color,
|
||||||
|
textAlign: column.align,
|
||||||
|
width: column.width + 'px',
|
||||||
|
flex: column.width ? 'inherit' : 1
|
||||||
|
}">
|
||||||
<i v-if="isShowIndex === '1' && i === 0">{{ index + 1 }}</i>
|
<i v-if="isShowIndex === '1' && i === 0">{{ index + 1 }}</i>
|
||||||
<span>{{ column.v }}</span>
|
<span>{{ column.v }}</span>
|
||||||
</div>
|
</div>
|
||||||
@@ -38,6 +44,11 @@
|
|||||||
isShowIndex: {
|
isShowIndex: {
|
||||||
type: String,
|
type: String,
|
||||||
default: '0'
|
default: '0'
|
||||||
|
},
|
||||||
|
|
||||||
|
stripe: {
|
||||||
|
type: String,
|
||||||
|
default: '1'
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
@@ -77,9 +88,9 @@
|
|||||||
})
|
})
|
||||||
|
|
||||||
this.header = value.map(v => {
|
this.header = value.map(v => {
|
||||||
console.log((Number(v.width)))
|
|
||||||
return {
|
return {
|
||||||
v: v[headerKey],
|
v: v[headerKey],
|
||||||
|
align: v.align,
|
||||||
width: Number(v.width || 0) ? (Number(v.width || 0) + (this.isShowIndex === '1' ? 0 : 0)) : ''
|
width: Number(v.width || 0) ? (Number(v.width || 0) + (this.isShowIndex === '1' ? 0 : 0)) : ''
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
@@ -89,6 +100,7 @@
|
|||||||
return {
|
return {
|
||||||
v: e[v],
|
v: e[v],
|
||||||
color: e.color,
|
color: e.color,
|
||||||
|
align: e.align,
|
||||||
width: e.width || ''
|
width: e.width || ''
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
@@ -108,7 +120,7 @@
|
|||||||
width: 100%;
|
width: 100%;
|
||||||
height: 40px;
|
height: 40px;
|
||||||
padding: 0 20px;
|
padding: 0 20px;
|
||||||
background: #252525;
|
background: rgba(70, 70, 70, 0.35);
|
||||||
|
|
||||||
span {
|
span {
|
||||||
flex: 1;
|
flex: 1;
|
||||||
@@ -128,7 +140,7 @@
|
|||||||
|
|
||||||
.body {
|
.body {
|
||||||
height: calc(100% - 40px);
|
height: calc(100% - 40px);
|
||||||
padding: 10px 20px;
|
padding: 10px 0;
|
||||||
overflow-y: auto;
|
overflow-y: auto;
|
||||||
box-sizing: border-box;
|
box-sizing: border-box;
|
||||||
.row {
|
.row {
|
||||||
@@ -136,6 +148,12 @@
|
|||||||
align-items: center;
|
align-items: center;
|
||||||
width: 100%;
|
width: 100%;
|
||||||
height: 52px;
|
height: 52px;
|
||||||
|
padding: 0 20px;
|
||||||
|
box-sizing: border-box;
|
||||||
|
|
||||||
|
&.stripe:nth-of-type(2n) {
|
||||||
|
background: rgba(48, 48, 48, 0.4);
|
||||||
|
}
|
||||||
|
|
||||||
div {
|
div {
|
||||||
display: flex;
|
display: flex;
|
||||||
|
|||||||
@@ -78,6 +78,21 @@
|
|||||||
</el-select>
|
</el-select>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
<div class="layout-config__item" v-if="config.type === 'AiDvTable'">
|
||||||
|
<label>斑马纹</label>
|
||||||
|
<div class="layout-config__item--right">
|
||||||
|
<el-select size="mini" v-model="config.stripe" placeholder="请选择" clearable>
|
||||||
|
<el-option
|
||||||
|
label="是"
|
||||||
|
value="1">
|
||||||
|
</el-option>
|
||||||
|
<el-option
|
||||||
|
label="否"
|
||||||
|
value="0">
|
||||||
|
</el-option>
|
||||||
|
</el-select>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
<div class="layout-config__item">
|
<div class="layout-config__item">
|
||||||
<label>表格行数</label>
|
<label>表格行数</label>
|
||||||
<div class="layout-config__item--right">
|
<div class="layout-config__item--right">
|
||||||
|
|||||||
@@ -501,6 +501,7 @@ const components = [
|
|||||||
dataX: '',
|
dataX: '',
|
||||||
dataY: [],
|
dataY: [],
|
||||||
rowNum: 7,
|
rowNum: 7,
|
||||||
|
stripe: '1',
|
||||||
isShowIndex: '1',
|
isShowIndex: '1',
|
||||||
sourceDataId: '',
|
sourceDataId: '',
|
||||||
api: '',
|
api: '',
|
||||||
|
|||||||
Reference in New Issue
Block a user