2025-08-13 11:53:14 +08:00
|
|
|
<template>
|
|
|
|
|
<!-- 顶部 banner 区域 -->
|
|
|
|
|
<view class="all">
|
|
|
|
|
<Navbar title="中证参考" :hasBack="false"></Navbar>
|
2025-08-13 13:49:54 +08:00
|
|
|
<Tabs @tabChange="tabChange"></Tabs>
|
2025-08-13 11:53:14 +08:00
|
|
|
|
2025-08-13 13:21:40 +08:00
|
|
|
<RankListMini v-if="tabIndex == 0" :newsList="newsList"></RankListMini>
|
|
|
|
|
<MineMini v-if="tabIndex == 1"></MineMini>
|
|
|
|
|
<Tabbar @tabChange="tabChange"></Tabbar>
|
2025-08-13 11:53:14 +08:00
|
|
|
</view>
|
|
|
|
|
</template>
|
|
|
|
|
|
|
|
|
|
<script setup>
|
2025-08-13 13:21:40 +08:00
|
|
|
import { ref, onMounted, defineAsyncComponent, reactive } from "vue";
|
|
|
|
|
import Tabbar from "@/components/mini/Tabbar.vue";
|
2025-08-13 11:53:14 +08:00
|
|
|
import Navbar from '@/components/mini/Navbar.vue'
|
2025-08-13 12:18:25 +08:00
|
|
|
import RankListMini from "@/components/RankListMini.vue";
|
2025-08-13 13:21:40 +08:00
|
|
|
// const Mine = defineAsyncComponent(() => import("@/components/mine.vue"));
|
|
|
|
|
import MineMini from "@/components/mineMini.vue";
|
2025-08-13 13:49:54 +08:00
|
|
|
import Tabs from "@/components/mini/Tabs.vue";
|
2025-08-13 13:21:40 +08:00
|
|
|
|
|
|
|
|
|
2025-08-13 12:18:25 +08:00
|
|
|
import {
|
|
|
|
|
getTopNews,
|
|
|
|
|
} from "@/api/newsInfo";
|
|
|
|
|
|
|
|
|
|
const newsList = ref([]);
|
|
|
|
|
// 概念标签贴标
|
|
|
|
|
async function getNewsList() {
|
|
|
|
|
newsList.value = await getTopNews({});
|
|
|
|
|
}
|
2025-08-13 11:53:14 +08:00
|
|
|
|
|
|
|
|
const tabIndex = ref(0);
|
|
|
|
|
function tabChange(index) {
|
|
|
|
|
tabIndex.value = index;
|
2025-08-13 13:21:40 +08:00
|
|
|
|
|
|
|
|
switch (index) {
|
|
|
|
|
case 0:
|
|
|
|
|
getNewsList()
|
|
|
|
|
break;
|
|
|
|
|
}
|
2025-08-13 11:53:14 +08:00
|
|
|
}
|
|
|
|
|
|
2025-08-13 12:18:25 +08:00
|
|
|
onMounted(async () => {
|
|
|
|
|
getNewsList()
|
|
|
|
|
});
|
2025-08-13 11:53:14 +08:00
|
|
|
</script>
|
|
|
|
|
|
|
|
|
|
<style scoped lang="scss"></style>
|