Files
lingji-work-fe/src/views/components/workplace/index.vue
dkp 7969167c70 feat(container): 在容器组件中添加标题右侧插槽并调整样式- 在 container.vue 中添加了 header 插槽,用于在标题右侧放置内容
- 调整了 container.vue 中的标题布局,使其与新增插槽对齐- 更新了 workplace/index.vue 中的样式选择器,以适应新的 DOM 结构
2025-06-20 11:22:52 +08:00

53 lines
1.4 KiB
Vue

<template>
<div class="m-auto mt-24px max-w-1000px">
<Container title="推荐产品" class="body">
<div class="flex flex-wrap">
<Product
v-for="product in products"
:key="product.id"
class="mt-20px ml-20px"
:product="product"
@refresh="getProductList"
/>
</div>
<a-empty v-if="products.length === 0" />
</Container>
<Container title="成功案例" class="body mt-24px">
<div class="flex flex-wrap">
<Case v-for="item in cases" :key="item.id" class="mt-20px ml-20px" :data="item"></Case>
</div>
<a-empty v-if="cases.length === 0" />
</Container>
</div>
</template>
<script setup lang="ts">
import Container from '@/components/container.vue';
import Product from '@/views/components/workplace/modules/product.vue';
import Case from '@/views/components/workplace/modules/case.vue';
import { fetchProductList, fetchSuccessCaseList } from '@/api/all/index';
import { ref, onMounted } from 'vue';
const products = ref([]);
const cases = ref([]);
onMounted(() => {
getProductList();
getSuccessCaseList();
});
const getProductList = async () => {
products.value = await fetchProductList();
};
const getSuccessCaseList = async () => {
cases.value = await fetchSuccessCaseList();
};
</script>
<style scoped lang="less">
.body {
padding-left: 4px !important;
:deep(> div > .title) {
padding-left: 20px;
}
}
</style>