75 lines
1.1 KiB
Vue
75 lines
1.1 KiB
Vue
<template>
|
|
<view :class="contClass" style="margin-top: 0;">
|
|
<u-row>
|
|
<view style="flex: 1;">
|
|
<u-text :text="leftText" size="28" :bold="true"></u-text>
|
|
</view>
|
|
<u-row>
|
|
<u-icon size="22" :name="`${show?'arrow-up':'arrow-down'}`" color="#333"></u-icon>
|
|
</u-row>
|
|
</u-row>
|
|
</view>
|
|
</template>
|
|
|
|
<script>
|
|
export default {
|
|
computed: {
|
|
leftText() {
|
|
let str = ''
|
|
if(this.value) {
|
|
const curItem = this.list.filter(item=> item.val == this.value)[0] || {}
|
|
curItem.title && (str = curItem.title)
|
|
} else {
|
|
str = this.placeholder
|
|
}
|
|
return str
|
|
},
|
|
},
|
|
props: {
|
|
contClass: {
|
|
default(){
|
|
return 'blcok-grey radius-20 '
|
|
}
|
|
},
|
|
placeholder: {
|
|
default(){
|
|
return ''
|
|
}
|
|
},
|
|
show: {
|
|
default(){
|
|
return false
|
|
}
|
|
},
|
|
value: {
|
|
default(){
|
|
return ''
|
|
}
|
|
},
|
|
list: {
|
|
default(){
|
|
return []
|
|
}
|
|
}
|
|
},
|
|
data() {
|
|
return {
|
|
|
|
}
|
|
},
|
|
created() {
|
|
|
|
},
|
|
onHide() {
|
|
|
|
},
|
|
destroyed() {},
|
|
|
|
methods: {
|
|
}
|
|
}
|
|
</script>
|
|
|
|
<style scoped lang="scss">
|
|
|
|
</style> |