Newer
Older
smartwell_front / src / views / home / dashboard / components / showCard.vue
<!--
  Description: 布局卡片
  Author: 李亚光
  Date: 2023-07-05
 -->
<script lang="ts" setup name="ShowCard">
const $props = defineProps({
  title: {
    type: String,
    default: '',
  },
  showMore: {
    type: Boolean,
    default: false,
  },
})
const $emits = defineEmits(['more'])
const more = () => {
  $emits('more')
}
</script>

<template>
  <el-card>
    <template #header>
      <div class="card-header">
        <span class="title">{{ title }}</span>
        <span v-if="showMore" class="more" @click="more">>>更多</span>
        <span v-else />
      </div>
    </template>
    <div>
      <slot name="content" />
    </div>
  </el-card>
</template>

<style lang="scss" scoped>
.card-header {
  display: flex;
  justify-content: space-between;
  // padding: 5px 10px;

  .title {
    font-weight: 700;
  }

  .more {
    &:hover {
      cursor: pointer;
      color: #3d7eff;
    }
  }
}

::v-deep(.el-card__header) {
  padding: 10px;
}

::v-deep(.el-card__body) {
  padding: 10px;
}
</style>