38 lines
904 B
Vue
38 lines
904 B
Vue
<template>
|
|
<view class="container">
|
|
<view v-for="item in themeDTOList" :key="item.title">
|
|
<RecommendPostsList :recommendTheme="item" />
|
|
</view>
|
|
</view>
|
|
</template>
|
|
|
|
<script setup>
|
|
import { ref, onMounted, nextTick } from "vue";
|
|
import { SCROLL_TO_BOTTOM } from "@/constant/constant";
|
|
import { discoveryCradComponent } from "@/request/api/MainPageDataApi";
|
|
import RecommendPostsList from "../RecommendPostsList/index.vue";
|
|
|
|
const themeDTOList = ref([]);
|
|
|
|
const loadDiscoveryCradComponent = async () => {
|
|
const res = await discoveryCradComponent();
|
|
if (res.code === 0 && res.data) {
|
|
themeDTOList.value = res.data.themeDTOList;
|
|
|
|
nextTick(() => {
|
|
setTimeout(() => {
|
|
uni.$emit(SCROLL_TO_BOTTOM, true);
|
|
}, 300);
|
|
});
|
|
}
|
|
};
|
|
|
|
onMounted(() => {
|
|
loadDiscoveryCradComponent();
|
|
});
|
|
</script>
|
|
|
|
<style scoped lang="scss">
|
|
@import "./styles/index.scss";
|
|
</style>
|