fix: dashboard变量样式调整

This commit is contained in:
zhangyu
2022-07-06 14:54:25 +08:00
parent c876eef7fb
commit 7a69387cdf
3 changed files with 38 additions and 19 deletions

View File

@@ -4,10 +4,13 @@
z-index: 1; z-index: 1;
background: $--background-color-empty; background: $--background-color-empty;
padding-left: 10px; padding-left: 10px;
padding-bottom: 5px; margin-top: -5px;
flex-wrap: wrap;
.panel-variables-content{ .panel-variables-content{
display: flex; display: flex;
margin-right: 15px; margin-right: 15px;
margin-bottom: 5px;
margin-top: 5px;
} }
.variable-key{ .variable-key{
border: 1px solid $--border-color-light; border: 1px solid $--border-color-light;
@@ -15,18 +18,27 @@
background: $--background-color-2; background: $--background-color-2;
padding: 3px 10px; padding: 3px 10px;
border-radius: 4px 0 0 4px; border-radius: 4px 0 0 4px;
max-width: 120px;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
} }
.choose-box { .choose-box {
overflow: hidden; width: 150px;
width: calc(100% - 7px); //position: relative;
white-space: nowrap; }
max-width: 200px; .choose-box .no-select {
text-overflow: ellipsis; width: 150px;
padding-right: 5px;
height: 30px;
border: 1px solid $--border-color-light; border: 1px solid $--border-color-light;
background: $--background-color-empty;
box-sizing: border-box;
border-left: none; border-left: none;
padding-left: 8px; padding-left: 8px;
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
padding-right: 5px;
height: 32px;
display: flex; display: flex;
align-items: center; align-items: center;
.nz-icon-arrow-down6{ .nz-icon-arrow-down6{
@@ -34,6 +46,13 @@
color: $--color-text-secondary; color: $--color-text-secondary;
} }
} }
.choose-box .is-select{
width: 200px;
z-index: 1;
height: 32px;
position: relative;
//left: 0;
}
.choose-box-content{ .choose-box-content{
flex: 1; flex: 1;
white-space: nowrap; white-space: nowrap;
@@ -46,8 +65,7 @@
} }
.panel-variables{ .panel-variables{
min-width: 180px; width: 200px;
max-width: 220px;
.el-dropdown-menu__item { .el-dropdown-menu__item {
padding: 0 5px 0 20px; padding: 0 5px 0 20px;
width: 100%; width: 100%;

View File

@@ -18,7 +18,7 @@
:key="key" :key="key"
@click="handleShortcutClick(shortcut)">{{shortcut.text}}</button> @click="handleShortcutClick(shortcut)">{{shortcut.text}}</button>
</div> </div>
<div class="el-picker-panel__body" style="min-width: auto"> <div class="el-picker-panel__body" style="min-width: 100%">
<div class="el-date-range-picker__time-header" v-if="showTime"> <div class="el-date-range-picker__time-header" v-if="showTime">
<span class="el-date-range-picker__editors-wrap"> <span class="el-date-range-picker__editors-wrap">
<span class="el-date-range-picker__time-picker-wrap"> <span class="el-date-range-picker__time-picker-wrap">

View File

@@ -1,7 +1,7 @@
<template> <template>
<div style="" class="panel-variables-box"> <div style="" class="panel-variables-box">
<div v-for="(item,index) in labelArr" :key="index" v-if="item.show" class="panel-variables-content" style="display: flex"> <div v-for="(item,index) in labelArr" :key="index" v-if="item.show" class="panel-variables-content" style="display: flex">
<div class="variable-key">{{item.name}}</div> <div class="variable-key" :title="item.name">{{item.name}}</div>
<el-popover <el-popover
trigger="manual" trigger="manual"
placement="bottom-start" placement="bottom-start"
@@ -15,12 +15,12 @@
</li> </li>
<ul class="pop-list"> <ul class="pop-list">
<el-checkbox-group v-model="item.checked" @change="(value)=>{checkedChange(item,value)}" v-if="item.multi"> <el-checkbox-group v-model="item.checked" @change="(value)=>{checkedChange(item,value)}" v-if="item.multi">
<li class="el-dropdown-menu__item" v-for="value in labelValue[item.name]" :key="value.value"> <li class="el-dropdown-menu__item" v-for="value in labelValue[item.name]" :key="value.value" :title="value.value">
<el-checkbox :label="value.value" >{{value.label}}</el-checkbox> <el-checkbox :label="value.value" >{{value.label}}</el-checkbox>
</li> </li>
</el-checkbox-group> </el-checkbox-group>
<div v-else> <div v-else>
<li class="el-dropdown-menu__item" v-for="(value, j) in labelValue[item.name]" :key="j" @click="selectLabelValue(item,value)"> <li class="el-dropdown-menu__item" v-for="(value, j) in labelValue[item.name]" :key="j" @click="selectLabelValue(item,value)" :title="value.value">
<div class="el-dropdown-menu__item-label" :class="value.value === item.checked[0] && !item.checkAll ? 'checked': ''"> <div class="el-dropdown-menu__item-label" :class="value.value === item.checked[0] && !item.checkAll ? 'checked': ''">
{{value.label}} {{value.label}}
</div> </div>
@@ -29,11 +29,13 @@
</ul> </ul>
</ul> </ul>
<div slot="reference" class="choose-box" @click="triggerVisible(item)"> <div slot="reference" class="choose-box" @click="triggerVisible(item)">
<div class="choose-box-content"> <div class="no-select" :class="item.visible? 'is-select': ''">
<div class="choose-box-content" :title="item.checked.map(value=> labelValue[item.name].find(labelObj=>labelObj.value === value).label).join(' + ')">
{{item.checked.map(value=> labelValue[item.name].find(labelObj=>labelObj.value === value).label).join(' + ')}} {{item.checked.map(value=> labelValue[item.name].find(labelObj=>labelObj.value === value).label).join(' + ')}}
</div> </div>
<i class="nz-icon nz-icon-arrow-down6"/> <i class="nz-icon nz-icon-arrow-down6"/>
</div> </div>
</div>
</el-popover> </el-popover>
</div> </div>
</div> </div>
@@ -151,7 +153,6 @@ export default {
const reg = isRegExp(this.labelArr[index].regex) ? eval(this.labelArr[index].regex) : new RegExp(this.labelArr[index].regex, 'g') const reg = isRegExp(this.labelArr[index].regex) ? eval(this.labelArr[index].regex) : new RegExp(this.labelArr[index].regex, 'g')
let arr = [] let arr = []
response.forEach(label => { response.forEach(label => {
// console.log(reg.test(label.label))
if (reg.test(label.label)) { if (reg.test(label.label)) {
const str = label.label.match(reg) const str = label.label.match(reg)
if (str.groups) { if (str.groups) {