<template>
|
<div class="pro-list-itemV2">
|
<div class="pro-list-itemV2-inner">
|
<img v-if="icon" :src="icon" class="pro-list-itemV2-icon" />
|
<div class="pro-list-itemV2-title">{{ title }}</div>
|
<slot name="extra"></slot>
|
<img v-if="showArrow" :src="IconArrow" class="pro-list-itemV2-arrow" />
|
</div>
|
</div>
|
</template>
|
|
<script setup lang="ts">
|
import IconArrow from '@/assets/setting/icon-arrow.png';
|
|
defineOptions({
|
name: 'ListItemV2',
|
});
|
|
type Props = {
|
icon?: string;
|
title?: string;
|
showArrow?: boolean;
|
};
|
|
const props = withDefaults(defineProps<Props>(), {
|
showArrow: true,
|
});
|
</script>
|
|
<style lang="scss">
|
@import '@/styles/common.scss';
|
|
.pro-list-itemV2 {
|
padding: 0 boleGetCssVar('size', 'body-padding-h');
|
|
.pro-list-itemV2-inner {
|
height: 112px;
|
display: flex;
|
align-items: center;
|
|
.pro-list-itemV2-icon {
|
width: 48px;
|
height: 48px;
|
margin-right: 16px;
|
}
|
|
.pro-list-itemV2-title {
|
font-weight: 400;
|
font-size: 32px;
|
color: boleGetCssVar('text-color', 'primary');
|
line-height: 44px;
|
flex: 1;
|
min-width: 0;
|
@include ellipsis;
|
}
|
|
.pro-list-itemV2-arrow {
|
width: 32px;
|
height: 32px;
|
}
|
}
|
}
|
</style>
|