济菏高速业务端
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

112 lines
2.3 KiB

1 year ago
<template>
<ElPopover placement="bottom" popper-class="global-input-search-popover" :popperOptions="popperOptions"
:visibleArrow="false" :width="this.width" trigger="hover" @show="handleShow">
<div class='InputSearch' slot="reference" ref="ReferenceInputRef">
<span>{{ placeholder }}</span>
<img src="./search.svg">
</div>
<div style="width: 100%">
<slot>
<Form class="form" :formList="formList" v-bind="getFormConfigOptions" />
<ElEmpty description="暂无搜索内容"></ElEmpty>
</slot>
<div class="footer">
<Button style="background-color: rgba(0, 179, 204, .3);">
重置
</Button>
<Button>
搜索
</Button>
</div>
</div>
</ElPopover>
1 year ago
</template>
<script>
import Button from '@screen/components/Buttons/Button.vue';
import Form from '@screen/components/FormConfig';
1 year ago
export default {
name: 'InputSearch',
components: {
Button,
Form
},
1 year ago
props: {
placeholder: {
type: String,
default: "请点击右侧图标筛选"
},
formConfigOptions: {
type: Object,
default: null
},
formList: {
type: Array,
default: () => []
},
},
data() {
return {
width: null,
popperOptions: {}
}
},
emit: [
'handleReset',
"handleSearch"
],
computed: {
getFormConfigOptions() {
return {
column: "1",
labelWidth: "120px",
...this.formConfigOptions
}
}
},
methods: {
handleShow() {
if (this.width) return;
this.width = this.$refs.ReferenceInputRef.getBoundingClientRect().width
1 year ago
}
}
}
</script>
<style lang='scss'>
div.el-popper.global-input-search-popover {
background: #064258;
.footer {
display: flex;
align-items: center;
justify-content: flex-end;
gap: 9px;
}
}
</style>
1 year ago
<style lang='scss' scoped>
.InputSearch {
height: 26px;
background: linear-gradient(180deg, #005C79 0%, #009BCC 100%) !important;
color: #fff;
border-radius: 2px;
display: flex;
align-items: center;
justify-content: space-between;
padding: 3px 15px;
padding-right: 9px;
cursor: pointer;
1 year ago
font-size: 12px;
font-family: PingFang SC, PingFang SC;
font-weight: 400;
color: #FFFFFF;
line-height: 14px;
1 year ago
}
</style>