bemarket/src/components/market/SelectSection.vue
2021-12-28 19:24:55 +08:00

102 lines
2.2 KiB
Vue

<template>
<div class="select-section">
<div class="header">
<span class="label">{{name}}</span>
<div class="arrow">
<img
class="icon"
src="data:image/svg+xml,%3csvg width='14' height='8' viewBox='0 0 14 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3e %3cpath d='M12.8334 1.08337L7.00008 6.91671L1.16675 1.08337' stroke='white' stroke-linecap='round' stroke-linejoin='round' /%3e %3c/svg%3e"
/>
</div>
</div>
<div class="sc-eCApnc fAVkeA content">
<span class="noSelect">{{noSelect}}</span>
<div class="chooseBtn">
<button class="general-btn">
<span>{{btnName}}</span>
</button>
</div>
</div>
</div>
</template>
<script lang="ts">
import { Component, Prop, Vue } from 'vue-property-decorator'
@Component({
name: 'SelectSection',
components: {
}
})
export default class extends Vue {
@Prop() private name!: string;
@Prop() private btnName!: string;
@Prop() private noSelect!: string;
}
</script>
<style lang="scss" scoped>
.select-section {
display: flex;
flex-direction: column;
padding: 1em 0;
border-bottom: 1px solid #5b3dcb;
max-width: 100%;
}
.select-section .header {
display: flex;
flex-direction: row;
}
.select-section .header .label {
display: flex;
flex: 1;
font-weight: bold;
font-size: 0.875em;
color: rgba(188, 173, 242, 1);
}
.select-section .header .arrow {
display: flex;
}
.select-section .header .arrow .icon {
transform: rotate(180deg);
transition: all 0.3s;
}
.select-section .header .arrow .icon.collapsed {
transform: rotate(0deg);
}
.select-section .content {
transition: all 0.3s;
display: flex;
flex-direction: column;
opacity: 1;
margin-top: 1em;
}
.select-section .content.collapsed {
opacity: 0;
overflow: hidden;
height: 0;
margin-top: 0;
}
.select-section .content .noSelect {
margin-left: 0.375em;
margin-bottom: 1.25em;
font-weight: bold;
font-size: 0.75em;
color: #bcadf2;
height: 1.875em;
}
.select-section .content .chooseBtn {
width: 100%;
}
.select-section .content .chooseBtn button {
width: 100%;
height: 3.4375em;
font-size: inherit;
line-height: inherit;
}
.select-section .content .chooseBtn button span {
font-size: 0.875em;
}
</style>