| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788 |
- <script setup lang="ts">
- import Button from '@/components/basic/Button.vue';
- import Icon from '@/components/basic/Icon.vue';
- import ImageButton from '@/components/basic/ImageButton.vue';
- import Text from '@/components/basic/Text.vue';
- import BackgroundBox from '@/components/display/block/BackgroundBox.vue';
- import Touchable from '@/components/feedback/Touchable.vue';
- import FlexCol from '@/components/layout/FlexCol.vue';
- import FlexRow from '@/components/layout/FlexRow.vue';
- import Height from '@/components/layout/space/Height.vue';
- import Width from '@/components/layout/space/Width.vue';
- defineEmits(['click'])
- defineProps({
- icon: {
- type: String,
- default: 'task-summary',
- },
- title: {
- type: String,
- default: '村社概况',
- },
- desc: {
- type: String,
- default: '探索村社的历史渊源与发生轨迹',
- },
- button: {
- type: Boolean,
- default: true,
- },
- enable: {
- type: Boolean,
- default: true,
- },
- extra: {
- type: String,
- default: '',
- },
- goButtonText: {
- type: String,
- default: '去完成',
- },
- })
- </script>
- <template>
- <BackgroundBox
- backgroundImage="https://xy.wenlvti.net/app_static/images/village/BoxMid.png"
- :backgroundCutBorder="[10,10,10,10]"
- :backgroundCutBorderSize="[10,10,10,10]"
- >
- <Touchable
- :padding="25"
- :touchable="button && enable"
- direction="row"
- justify="space-between"
- align="center"
- @click="$emit('click')"
- >
- <FlexRow align="center">
- <FlexCol center radius="50%" backgroundColor="#efefef" :padding="20">
- <Icon :icon="icon || 'help-filling'" color="primary" type="material" :size="50" />
- </FlexCol>
- <Width :width="20" />
- <FlexCol class="info">
- <Text class="title" :fontSize="36" color="text.title" :text="title" />
- <Height :height="10" />
- <Text class="desc" :fontSize="24" color="text.second" :text="desc" />
- </FlexCol>
- </FlexRow>
- <FlexRow align="center" :flexShrink="0" :gap="15">
- <Text v-if="extra" class="extra" :fontSize="24" color="text.second" :text="extra" />
- <ImageButton
- v-if="button"
- src="https://xy.wenlvti.net/app_static/images/village/BoxButton.png"
- :touchable="enable"
- :width="140"
- :height="75"
- @click="$emit('click')"
- >
- <FlexCol position="absolute" inset="0" center>
- <Text :text="enable ? goButtonText : '未开放'" fontConfig="contentText" color="white" />
- </FlexCol>
- </ImageButton>
- </FlexRow>
- </Touchable>
- </BackgroundBox>
- </template>
|