|
@@ -0,0 +1,696 @@
|
|
|
+<template>
|
|
|
+ <HomePageHead></HomePageHead>
|
|
|
+ <HomePageNavigation></HomePageNavigation>
|
|
|
+ <div class="adPlace">
|
|
|
+ <HomeAdvertising :imgurl="adImg1"></HomeAdvertising>
|
|
|
+ </div>
|
|
|
+ <HomeSecondaryHeading :titleData="pageData" :pinyinid="routeId"></HomeSecondaryHeading>
|
|
|
+ <section class="index_1 clearfix index_main">
|
|
|
+ <!-- 最新 -->
|
|
|
+ <div class="img_ul_1 clearfix">
|
|
|
+ <NuxtLink class="img_li_1" :href="getLinkPathDetail(item)" :title="item.title"
|
|
|
+ v-for="(item, index) in newest" :key="index">
|
|
|
+ <img class="img_li_1_photo" :src="item.imgurl" :title="item.title" :alt="item.title">
|
|
|
+ </NuxtLink>
|
|
|
+ </div>
|
|
|
+ <!-- 推荐 -->
|
|
|
+ <div class="ul_1 clearfix">
|
|
|
+ <NuxtLink class="ul_1_a dot1" :href="getLinkPathDetail(item)" :title="item.title"
|
|
|
+ v-for="(item, index) in recommend" :key="index">
|
|
|
+ {{ item.title }}
|
|
|
+ </NuxtLink>
|
|
|
+ </div>
|
|
|
+ </section>
|
|
|
+ <main class="index_main clearfix">
|
|
|
+ <div class="index_left">
|
|
|
+ <!-- 第一部分 -->
|
|
|
+ <div class="index_2 clearfix">
|
|
|
+ <div class="index_2_head clearfix">
|
|
|
+ <NuxtLink class="index_2_head_a" :class="{ 'index_2_head_a_only': tabsData1 == 1 }"
|
|
|
+ @mouseenter="tabsData1 = 1" :href="getLinkPath(pageData[0])" v-if="pageData[0]"
|
|
|
+ :title="pageData[0].alias">
|
|
|
+ {{ pageData[0].alias }}
|
|
|
+ </NuxtLink>
|
|
|
+ <span class="index_2_head_a">/ </span>
|
|
|
+ <NuxtLink class="index_2_head_a" :class="{ 'index_2_head_a_only': tabsData1 == 2 }"
|
|
|
+ @mouseenter="tabsData1 = 2" :href="getLinkPath(pageData[1])" v-if="pageData[1]"
|
|
|
+ :title="pageData[1].alias">
|
|
|
+ {{ pageData[1].alias }}
|
|
|
+ </NuxtLink>
|
|
|
+ </div>
|
|
|
+ <div class="index_2_in clearfix" v-if="tabsData1 === 1">
|
|
|
+ <div class="ul_2 clearfix">
|
|
|
+ <NuxtLink class="ul_2_a dot1" :href="getLinkPathDetail(item)" :title="item.title"
|
|
|
+ v-for="(item, index) in pageData[0].data2" :key="index">
|
|
|
+ {{ item.title }}
|
|
|
+ </NuxtLink>
|
|
|
+ </div>
|
|
|
+ <div class="img_ul_2 clearfix">
|
|
|
+ <div class="img_li_2" v-for="(item, index) in pageData[0].data" :key="index">
|
|
|
+ <NuxtLink class="img_li_2_a" :href="getLinkPathDetail(item)" :title="item.title">
|
|
|
+ <img class="img_li_2_a_photo" :src="item.imgurl" :title="item.title" :alt="item.title">
|
|
|
+ <div class="img_li_2_dot1 dot1">{{ item.title }}</div>
|
|
|
+ </NuxtLink>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div class="index_2_in clearfix" v-if="tabsData1 === 2">
|
|
|
+ <div class="ul_2 clearfix">
|
|
|
+ <NuxtLink class="ul_2_a dot1" :href="getLinkPathDetail(item)" :title="item.title"
|
|
|
+ v-for="(item, index) in pageData[1].data2" :key="index">
|
|
|
+ {{ item.title }}
|
|
|
+ </NuxtLink>
|
|
|
+ </div>
|
|
|
+ <div class="img_ul_2 clearfix">
|
|
|
+ <div class="img_li_2" v-for="(item, index) in pageData[1].data" :key="index">
|
|
|
+ <NuxtLink class="img_li_2_a" :href="getLinkPathDetail(item)" :title="item.title">
|
|
|
+ <img class="img_li_2_a_photo" :src="item.imgurl" :title="item.title" :alt="item.title">
|
|
|
+ <div class="img_li_2_dot1 dot1">{{ item.title }}</div>
|
|
|
+ </NuxtLink>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <!-- 第二部分 -->
|
|
|
+ <div class="index_3 clearfix">
|
|
|
+ <div class="index_3_head clearfix">
|
|
|
+ <NuxtLink class="index_3_head_a" :class="{ 'index_3_head_a_only': tabsData2 == 1 }"
|
|
|
+ :href="getLinkPath(pageData[2])" @mouseenter="tabsData2 = 1" v-if="pageData[2]"
|
|
|
+ :title="pageData[2].alias">
|
|
|
+ {{ pageData[2].alias }}
|
|
|
+ </NuxtLink>
|
|
|
+ <span class="index_3_head_a">/ </span>
|
|
|
+ <NuxtLink class="index_3_head_a" :class="{ 'index_3_head_a_only': tabsData2 == 2 }"
|
|
|
+ :href="getLinkPath(pageData[3])" @mouseenter="tabsData2 = 2" v-if="pageData[3]"
|
|
|
+ :title="pageData[3].alias">
|
|
|
+ {{ pageData[3].alias }}
|
|
|
+ </NuxtLink>
|
|
|
+ </div>
|
|
|
+ <div class="index_3_in clearfix" v-if="tabsData2 == 1">
|
|
|
+ <div class="ul_3 clearfix">
|
|
|
+ <NuxtLink class="ul_3_a dot1" :href="getLinkPathDetail(item)" :title="item.title"
|
|
|
+ v-for="(item, index) in pageData[2].data2" :key="index">
|
|
|
+ {{ item.title }}
|
|
|
+ </NuxtLink>
|
|
|
+ </div>
|
|
|
+ <div class="img_ul_3 clearfix">
|
|
|
+ <div class="img_li_3" v-for="(item, index) in pageData[2].data" :key="index">
|
|
|
+ <NuxtLink class="img_li_3_a" :href="getLinkPathDetail(item)" :title="item.title">
|
|
|
+ <img class="img_li_3_a_photo" :src="item.imgurl" :title="item.title" :alt="item.title">
|
|
|
+ <div class="img_li_3_dot1 dot1">{{ item.title }}</div>
|
|
|
+ </NuxtLink>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div class="index_3_in clearfix" v-if="tabsData2 == 2">
|
|
|
+ <div class="ul_3 clearfix">
|
|
|
+ <NuxtLink class="ul_3_a dot1" :href="getLinkPathDetail(item)" :title="item.title"
|
|
|
+ v-for="(item, index) in pageData[3].data2" :key="index">
|
|
|
+ {{ item.title }}
|
|
|
+ </NuxtLink>
|
|
|
+ </div>
|
|
|
+ <div class="img_ul_3 clearfix">
|
|
|
+ <div class="img_li_3" v-for="(item, index) in pageData[3].data" :key="index">
|
|
|
+ <NuxtLink class="img_li_3_a" :href="getLinkPathDetail(item)" :title="item.title">
|
|
|
+ <img class="img_li_3_a_photo" :src="item.imgurl" :title="item.title" :alt="item.title">
|
|
|
+ <div class="img_li_3_dot1 dot1">{{ item.title }}</div>
|
|
|
+ </NuxtLink>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <!-- 第三部分 -->
|
|
|
+ <div class="index_4 clearfix">
|
|
|
+ <div class="index_4_head clearfix">
|
|
|
+ <NuxtLink class="index_4_head_a" :class="{ 'index_4_head_a_only': tabsData3 == 1 }"
|
|
|
+ :href="getLinkPath(pageData[4])" @mouseenter="tabsData3 = 1" v-if="pageData[4]"
|
|
|
+ :title="pageData[4].alias">
|
|
|
+ {{ pageData[4].alias }}
|
|
|
+ </NuxtLink>
|
|
|
+ <span class="index_4_head_a">/ </span>
|
|
|
+ <NuxtLink class="index_4_head_a" :class="{ 'index_4_head_a_only': tabsData3 == 2 }"
|
|
|
+ :href="getLinkPath(pageData[5])" @mouseenter="tabsData3 = 2" v-if="pageData[5]"
|
|
|
+ :title="pageData[5].alias">
|
|
|
+ {{ pageData[5].alias }}
|
|
|
+ </NuxtLink>
|
|
|
+ </div>
|
|
|
+ <div class="index_4_in clearfix" v-if="tabsData3 == 1">
|
|
|
+ <div class="ul_4 clearfix">
|
|
|
+ <Nuxtlink class="ul_4_a dot1" :href="getLinkPathDetail(item)" :title="item.title"
|
|
|
+ v-for="(item, index) in pageData[4].data2" :key="index">
|
|
|
+ {{ item.title }}
|
|
|
+ </Nuxtlink>
|
|
|
+ </div>
|
|
|
+ <div class="img_ul_4 clearfix">
|
|
|
+ <div class="img_li_4" v-for="(item, index) in pageData[4].data" :key="index">
|
|
|
+ <NuxtLink class="img_li_4_a" :href="getLinkPathDetail(item)" :title="item.title">
|
|
|
+ <img class="img_li_4_a_photo" :src="item.imgurl" :title="item.title" :alt="item.title">
|
|
|
+ <div class="img_li_4_dot1 dot1">{{ item.title }}</div>
|
|
|
+ </NuxtLink>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div class="index_4_in clearfix" v-if="tabsData3 == 2">
|
|
|
+ <div class="ul_4 clearfix">
|
|
|
+ <Nuxtlink class="ul_4_a dot1" :href="getLinkPathDetail(item)" :title="item.title"
|
|
|
+ v-for="(item, index) in pageData[5].data2" :key="index">
|
|
|
+ {{ item.title }}
|
|
|
+ </Nuxtlink>
|
|
|
+ </div>
|
|
|
+ <div class="img_ul_4 clearfix">
|
|
|
+ <div class="img_li_4" v-for="(item, index) in pageData[5].data" :key="index">
|
|
|
+ <NuxtLink class="img_li_4_a" :href="getLinkPathDetail(item)" :title="item.title">
|
|
|
+ <img class="img_li_4_a_photo" :src="item.imgurl" :title="item.title" :alt="item.title">
|
|
|
+ <div class="img_li_4_dot1 dot1">{{ item.title }}</div>
|
|
|
+ </NuxtLink>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <!-- 第四部分 -->
|
|
|
+ <div class="index_5 clearfix">
|
|
|
+ <div class="index_5_head clearfix">
|
|
|
+ <NuxtLink class="index_5_head_a" :class="{ 'index_5_head_a_only': tabsData4 == 1 }"
|
|
|
+ :href="getLinkPath(pageData[6])" @mouseenter="tabsData4 = 1" v-if="pageData[6]"
|
|
|
+ :title="pageData[6].alias">
|
|
|
+ {{ pageData[6].alias }}
|
|
|
+ </NuxtLink>
|
|
|
+ <span class="index_5_head_a">/ </span>
|
|
|
+ <NuxtLink class="index_5_head_a" :class="{ 'index_5_head_a_only': tabsData4 == 2 }"
|
|
|
+ :href="getLinkPath(pageData[7])" @mouseenter="tabsData4 = 2" v-if="pageData[7]"
|
|
|
+ :title="pageData[7].alias">
|
|
|
+ {{ pageData[7].alias }}
|
|
|
+ </NuxtLink>
|
|
|
+ </div>
|
|
|
+ <div class="index_5_in clearfix" v-if="tabsData4 == 1">
|
|
|
+ <div class="ul_5 clearfix">
|
|
|
+ <NuxtLink class="ul_5_a dot1" :href="getLinkPathDetail(item)" :title="item.title"
|
|
|
+ v-for="(item, index) in pageData[6].data2" :key="index">
|
|
|
+ {{ item.title }}
|
|
|
+ </NuxtLink>
|
|
|
+ </div>
|
|
|
+ <div class="img_ul_5 clearfix">
|
|
|
+ <div class="img_li_5" v-for="(item, index) in pageData[6].data" :key="index">
|
|
|
+ <NuxtLink class="img_li_5_a" :href="getLinkPathDetail(item)" :title="item.title">
|
|
|
+ <img class="img_li_5_a_photo" :src="item.imgurl" :title="item.title" :alt="item.title">
|
|
|
+ <div class="img_li_5_dot1 dot1">{{ item.title }}</div>
|
|
|
+ </NuxtLink>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div class="index_5_in clearfix" v-if="tabsData4 == 2">
|
|
|
+ <div class="ul_5 clearfix">
|
|
|
+ <NuxtLink class="ul_5_a dot1" :href="getLinkPathDetail(item)" :title="item.title"
|
|
|
+ v-for="(item, index) in pageData[7].data2" :key="index">
|
|
|
+ {{ item.title }}
|
|
|
+ </NuxtLink>
|
|
|
+ </div>
|
|
|
+ <div class="img_ul_5 clearfix">
|
|
|
+ <div class="img_li_5" v-for="(item, index) in pageData[7].data" :key="index">
|
|
|
+ <NuxtLink class="img_li_5_a" :href="getLinkPathDetail(item)" :title="item.title">
|
|
|
+ <img class="img_li_5_a_photo" :src="item.imgurl" :title="item.title" :alt="item.title">
|
|
|
+ <div class="img_li_5_dot1 dot1">{{ item.title }}</div>
|
|
|
+ </NuxtLink>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <!-- 第五部分 -->
|
|
|
+ <div class="index_5 clearfix">
|
|
|
+ <div class="index_5_head clearfix">
|
|
|
+ <NuxtLink class="index_5_head_a" :class="{ 'index_5_head_a_only': tabsData5 == 1 }"
|
|
|
+ :href="getLinkPath(pageData[8])" @mouseenter="tabsData5 = 1" v-if="pageData[8]"
|
|
|
+ :title="pageData[8].alias">
|
|
|
+ {{ pageData[8].alias }}
|
|
|
+ </NuxtLink>
|
|
|
+ <span class="index_5_head_a" v-if="pageData[9]">/ </span>
|
|
|
+ <NuxtLink class="index_5_head_a" :class="{ 'index_5_head_a_only': tabsData5 == 2 }"
|
|
|
+ :href="getLinkPath(pageData[9])" @mouseenter="tabsData5 = 2" v-if="pageData[9]"
|
|
|
+ :title="pageData[9].alias">
|
|
|
+ {{ pageData[9].alias }}
|
|
|
+ </NuxtLink>
|
|
|
+ </div>
|
|
|
+ <div class="index_5_in clearfix" v-if="tabsData5 == 1">
|
|
|
+ <div class="ul_5 clearfix">
|
|
|
+ <NuxtLink class="ul_5_a dot1" :href="getLinkPathDetail(item)" :title="item.title"
|
|
|
+ v-for="(item, index) in pageData[8].data2" :key="index">
|
|
|
+ {{ item.title }}
|
|
|
+ </NuxtLink>
|
|
|
+ </div>
|
|
|
+ <div class="img_ul_5 clearfix">
|
|
|
+ <div class="img_li_5" v-for="(item, index) in pageData[8].data" :key="index">
|
|
|
+ <NuxtLink class="img_li_5_a" :href="getLinkPathDetail(item)" :title="item.title">
|
|
|
+ <img class="img_li_5_a_photo" :src="item.imgurl" :title="item.title" :alt="item.title">
|
|
|
+ <div class="img_li_5_dot1 dot1">{{ item.title }}</div>
|
|
|
+ </NuxtLink>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div class="index_5_in clearfix" v-if="tabsData5 == 2">
|
|
|
+ <div class="ul_5 clearfix">
|
|
|
+ <NuxtLink class="ul_5_a dot1" :href="getLinkPathDetail(item)" :title="item.title"
|
|
|
+ v-for="(item, index) in pageData[9].data2" :key="index">
|
|
|
+ {{ item.title }}
|
|
|
+ </NuxtLink>
|
|
|
+ </div>
|
|
|
+ <div class="img_ul_5 clearfix">
|
|
|
+ <div class="img_li_5" v-for="(item, index) in pageData[9].data" :key="index">
|
|
|
+ <NuxtLink class="img_li_5_a" :href="getLinkPathDetail(item)" :title="item.title">
|
|
|
+ <img class="img_li_5_a_photo" :src="item.imgurl" :title="item.title" :alt="item.title">
|
|
|
+ <div class="img_li_5_dot1 dot1">{{ item.title }}</div>
|
|
|
+ </NuxtLink>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <aside class="index_aside clearfix">
|
|
|
+ <!-- 最新资讯 -->
|
|
|
+ <div class="clearfix">
|
|
|
+ <div class="index_aside_head_1 clearfix">
|
|
|
+ <span class="index_aside_head_1_a" title="最新资讯">
|
|
|
+ 最新资讯
|
|
|
+ </span>
|
|
|
+ </div>
|
|
|
+ <div class="index_aside_img_ul_1 clearfix">
|
|
|
+ <div class="index_aside_img_li_1 clearfix" v-for="(item, index) in hotNewsListdata1" :key="index">
|
|
|
+ <NuxtLink class="index_aside_img_li_1_a" :href="getLinkPathDetail(item)" :title="item.title"
|
|
|
+ :target="item.islink == 1 ? '_blank' : '_self'">
|
|
|
+ <div class="index_aside_img_li_1_a_img_box">
|
|
|
+ <img class="" :src="item.imgurl" :title="item.title" :alt="item.title">
|
|
|
+ </div>
|
|
|
+ <div class="index_aside_img_li_1_dot3 dot3">{{ item.title }}</div>
|
|
|
+ </NuxtLink>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div class="index_aside_ul_1 clearfix">
|
|
|
+ <NuxtLink class="index_aside_ul_1_a dot1" :href="getLinkPathDetail(item)" :title="item.title"
|
|
|
+ v-for="(item, index) in hotNewsListdata2" :key="index">
|
|
|
+ {{ item.title }}
|
|
|
+ </NuxtLink>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <!-- 热点精选 -->
|
|
|
+ <div class="">
|
|
|
+ <div class="index_aside_head_2 clearfix">
|
|
|
+ <span class="index_aside_head_2_a" title="热点精选">
|
|
|
+ 热点精选
|
|
|
+ </span>
|
|
|
+ </div>
|
|
|
+ <div class="index_aside_img_ul_2 clearfix">
|
|
|
+ <div class="index_aside_img_li_2 clearfix" v-for="(item, index) in hotNewsList_img" :key="index">
|
|
|
+ <NuxtLink class="index_aside_img_li_2_a" :href="getLinkPathDetail(item)" :title="item.title">
|
|
|
+ <div class="index_aside_img_li_2_a_img_box">
|
|
|
+ <img class="" :src="item.imgurl" :title="item.title" :alt="item.title">
|
|
|
+ </div>
|
|
|
+ <div class="index_aside_img_li_2_dot3 dot3">{{ item.title }}</div>
|
|
|
+ </NuxtLink>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div class="index_aside_ul_2 clearfix">
|
|
|
+ <NuxtLink class="index_aside_ul_2_a dot1" :href="getLinkPathDetail(item)" :title="item.title"
|
|
|
+ v-for="(item, index) in hotNewsList_text" :key="index">
|
|
|
+ {{ item.title }}
|
|
|
+ </NuxtLink>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <!-- 加盟连锁 -->
|
|
|
+ </aside>
|
|
|
+ <HomeAdvertising :imgurl="adImg2"></HomeAdvertising>
|
|
|
+ </main>
|
|
|
+ <HomeFoot></HomeFoot>
|
|
|
+</template>
|
|
|
+<script setup>
|
|
|
+//0.加载页面依赖 start ---------------------------------------->
|
|
|
+import { ref, onMounted } from 'vue';
|
|
|
+import { ElMessage } from 'element-plus';
|
|
|
+import { NuxtLink } from '#components';
|
|
|
+//0.加载页面依赖 end ---------------------------------------->
|
|
|
+
|
|
|
+//1.获得路由id start ---------------------------------------->
|
|
|
+const targetSegment = getRoutePath(1);
|
|
|
+//1.1 获得当前的路由id
|
|
|
+let routeId;
|
|
|
+//通过导航路径反向查询导航id
|
|
|
+const getRouteId = await requestDataPromise('/web/getWebsiteRoute', {
|
|
|
+ method: 'GET',
|
|
|
+ query: {
|
|
|
+ 'pinyin': targetSegment,
|
|
|
+ },
|
|
|
+});
|
|
|
+if (getRouteId.code == 200) {
|
|
|
+ routeId = getRouteId.data.category_id
|
|
|
+} else {
|
|
|
+ console.log("获得路由id出错!", getRouteId.message)
|
|
|
+}
|
|
|
+//1.获得路由id end ---------------------------------------->
|
|
|
+
|
|
|
+//2.选项卡 start ---------------------------------------->
|
|
|
+const tabsData1 = ref(1)
|
|
|
+const tabsData2 = ref(1)
|
|
|
+const tabsData3 = ref(1)
|
|
|
+const tabsData4 = ref(1)
|
|
|
+const tabsData5 = ref(1)
|
|
|
+//2.选项卡 end ---------------------------------------->
|
|
|
+
|
|
|
+//3.广告 start ---------------------------------------->
|
|
|
+let adImg1 = ref({})
|
|
|
+let adImg2 = ref({})
|
|
|
+let adImg3 = ref({})
|
|
|
+let adImg4 = ref({})
|
|
|
+onMounted(async () => {
|
|
|
+ //从客户端获取行政职能部门 加快打开速度
|
|
|
+ const { $webUrl, $CwebUrl } = useNuxtApp();
|
|
|
+ //广告1
|
|
|
+ let url = `${$webUrl}/web/getWebsiteAdvertisement?ad_tag=nmgw_category_0001`
|
|
|
+ const responseAd1 = await fetch(url, {
|
|
|
+ headers: {
|
|
|
+ 'Content-Type': 'application/json',
|
|
|
+ 'Userurl': $CwebUrl,
|
|
|
+ 'Origin': $CwebUrl
|
|
|
+ }
|
|
|
+ });
|
|
|
+ const resultAd1 = await responseAd1.json();
|
|
|
+ adImg1.value = resultAd1.data[0];
|
|
|
+
|
|
|
+ //广告2
|
|
|
+ let url2 = `${$webUrl}/web/getWebsiteAdvertisement?ad_tag=nmgw_category_0002`
|
|
|
+ const responseAd2 = await fetch(url2, {
|
|
|
+ headers: {
|
|
|
+ 'Content-Type': 'application/json',
|
|
|
+ 'Userurl': $CwebUrl,
|
|
|
+ 'Origin': $CwebUrl
|
|
|
+ }
|
|
|
+ });
|
|
|
+ const resultAd2 = await responseAd2.json();
|
|
|
+ adImg2.value = resultAd2.data[0];
|
|
|
+
|
|
|
+ //广告3
|
|
|
+ let url3 = `${$webUrl}/web/getWebsiteAdvertisement?ad_tag=nmgw_category_0003`
|
|
|
+ const responseAd3 = await fetch(url3, {
|
|
|
+ headers: {
|
|
|
+ 'Content-Type': 'application/json',
|
|
|
+ 'Userurl': $CwebUrl,
|
|
|
+ 'Origin': $CwebUrl
|
|
|
+ }
|
|
|
+ });
|
|
|
+ const resultAd3 = await responseAd3.json();
|
|
|
+ adImg3.value = resultAd3.data[0];
|
|
|
+
|
|
|
+ //广告4
|
|
|
+ let url4 = `${$webUrl}/web/getWebsiteAdvertisement?ad_tag=nmgw_category_0004`
|
|
|
+ const responseAd4 = await fetch(url4, {
|
|
|
+ headers: {
|
|
|
+ 'Content-Type': 'application/json',
|
|
|
+ 'Userurl': $CwebUrl,
|
|
|
+ 'Origin': $CwebUrl
|
|
|
+ }
|
|
|
+ });
|
|
|
+ const resultAd4 = await responseAd4.json();
|
|
|
+ adImg4.value = resultAd4.data[0];
|
|
|
+})
|
|
|
+//3.广告 end ---------------------------------------->
|
|
|
+
|
|
|
+//4.页面数据 start ---------------------------------------->
|
|
|
+const pageData = ref([
|
|
|
+ //示例:
|
|
|
+ // {
|
|
|
+ // id: 1,
|
|
|
+ // title: "", //该导航的标题
|
|
|
+ // data: [], //数据1
|
|
|
+ // data1: [], //数据2
|
|
|
+ // data2: [], //数据3
|
|
|
+ // data3: [], //数据4
|
|
|
+ // data4: [], //数据5
|
|
|
+ // category_id1: "", //子导航id1
|
|
|
+ // category_id2: "",
|
|
|
+ // category_id3: "",
|
|
|
+ // category_id4: "",
|
|
|
+ // title1: "", //子导航标题1
|
|
|
+ // title2: "",
|
|
|
+ // title3: "",
|
|
|
+ // title4: "",
|
|
|
+ // cid: "" //该导航的id
|
|
|
+ // },
|
|
|
+])
|
|
|
+
|
|
|
+//4.1 获取所有导航
|
|
|
+try {
|
|
|
+ const navigateData = await requestDataPromise('/web/getWebsiteModelCategory', {
|
|
|
+ method: 'GET',
|
|
|
+ query: {
|
|
|
+ 'placeid': 1,
|
|
|
+ 'pid': routeId,
|
|
|
+ 'num': 20
|
|
|
+ },
|
|
|
+ });
|
|
|
+ if (navigateData.code == 200) {
|
|
|
+ // 遍历可用的导航池放到页面中
|
|
|
+ for (let index in navigateData.data) {
|
|
|
+ let data = {
|
|
|
+ title: navigateData.data[index].name,
|
|
|
+ cid: navigateData.data[index].category_id,
|
|
|
+ children_count: navigateData.data[index].children_count,
|
|
|
+ alias: navigateData.data[index].alias,
|
|
|
+ aLIas_pinyin: targetSegment + "/" + navigateData.data[index].aLIas_pinyin,
|
|
|
+ data: [],
|
|
|
+ data1: [],
|
|
|
+ data2: [],
|
|
|
+ data3: [],
|
|
|
+ data4: [],
|
|
|
+ category_id1: "",
|
|
|
+ category_id2: "",
|
|
|
+ category_id3: "",
|
|
|
+ category_id4: "",
|
|
|
+ title1: "",
|
|
|
+ title2: "",
|
|
|
+ title3: "",
|
|
|
+ title4: ""
|
|
|
+ };
|
|
|
+ if (navigateData.data[index].is_url == 1) {
|
|
|
+ // 处理 URL 的逻辑
|
|
|
+ } else {
|
|
|
+ //每个页面最多8个模块
|
|
|
+ pageData.value.push(data);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ //导航池加载完毕,开始申请模块数据
|
|
|
+ let getJson = []
|
|
|
+ for (let i = 0; i < pageData.value.length; i++) {
|
|
|
+ if (i == 0) {
|
|
|
+ getJson.push({ "id": pageData.value[i].cid + ",2,10" });
|
|
|
+ } else if (i == 1) {
|
|
|
+ getJson.push({ "id": pageData.value[i].cid + ",2,10" });
|
|
|
+ } else if (i == 2) {
|
|
|
+ getJson.push({ "id": pageData.value[i].cid + ",2,10" });
|
|
|
+ } else if (i == 3) {
|
|
|
+ getJson.push({ "id": pageData.value[i].cid + ",2,10" });
|
|
|
+ } else if (i == 4) {
|
|
|
+ getJson.push({ "id": pageData.value[i].cid + ",2,10" });
|
|
|
+ } else if (i == 5) {
|
|
|
+ getJson.push({ "id": pageData.value[i].cid + ",2,10" });
|
|
|
+ } else if (i == 6) {
|
|
|
+ getJson.push({ "id": pageData.value[i].cid + ",2,10" });
|
|
|
+ } else if (i == 7) {
|
|
|
+ getJson.push({ "id": pageData.value[i].cid + ",2,10" });
|
|
|
+ } else if (i == 8) {
|
|
|
+ getJson.push({ "id": pageData.value[i].cid + ",2,10" });
|
|
|
+ } else if (i == 9) {
|
|
|
+ getJson.push({ "id": pageData.value[i].cid + ",2,10" });
|
|
|
+ }
|
|
|
+ }
|
|
|
+ let jsonString = JSON.stringify(getJson);
|
|
|
+ getPageAllData(jsonString);
|
|
|
+
|
|
|
+ let getJson1 = [
|
|
|
+ { "level": "2,6,0" },
|
|
|
+ { "level": "1,0,10" },
|
|
|
+ ]
|
|
|
+ let jsonString1 = JSON.stringify(getJson1);
|
|
|
+ getPageHotData(jsonString1);
|
|
|
+
|
|
|
+
|
|
|
+ } else {
|
|
|
+ console.log("错误:渲染8个模块环节出错,请检查是否存在没有数据的模块!")
|
|
|
+ }
|
|
|
+} catch (error) {
|
|
|
+ console.log("错误:导航池渲染执行接口出错!请检查频道页渲染的模块数据是否完整!")
|
|
|
+}
|
|
|
+
|
|
|
+// 获取所有模块数据
|
|
|
+async function getPageAllData(jsonString) {
|
|
|
+ const mkdata = await requestDataPromise('/web/getWebsiteProject', {
|
|
|
+ method: 'GET',
|
|
|
+ query: {
|
|
|
+ 'id': jsonString
|
|
|
+ },
|
|
|
+ });
|
|
|
+ console.log('mkdata', mkdata.data)
|
|
|
+ if (mkdata.code == 200) {
|
|
|
+ if (mkdata.data.length > 0) {
|
|
|
+ //模块1 顶部大图和列表
|
|
|
+ pageData.value[0].data = mkdata.data[0].img_num;
|
|
|
+ pageData.value[0].data2 = mkdata.data[0].text_num;
|
|
|
+ }
|
|
|
+
|
|
|
+ if (mkdata.data.length > 1) {
|
|
|
+ //模块2
|
|
|
+ pageData.value[1].data = mkdata.data[1].img_num;
|
|
|
+ pageData.value[1].data2 = mkdata.data[1].text_num;
|
|
|
+ }
|
|
|
+
|
|
|
+ if (mkdata.data.length > 2) {
|
|
|
+ pageData.value[2].data = mkdata.data[2].img_num;
|
|
|
+ pageData.value[2].data2 = mkdata.data[2].text_num;
|
|
|
+ }
|
|
|
+
|
|
|
+ if (mkdata.data.length > 3) {
|
|
|
+ pageData.value[3].data = mkdata.data[3].img_num;
|
|
|
+ pageData.value[3].data2 = mkdata.data[3].text_num;
|
|
|
+ }
|
|
|
+
|
|
|
+ if (mkdata.data.length > 4) {
|
|
|
+ pageData.value[4].data = mkdata.data[4].img_num;
|
|
|
+ pageData.value[4].data2 = mkdata.data[4].text_num;
|
|
|
+ }
|
|
|
+
|
|
|
+ if (mkdata.data.length > 5) {
|
|
|
+ pageData.value[5].data = mkdata.data[5].img_num;
|
|
|
+ pageData.value[5].data2 = mkdata.data[5].text_num;
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ if (mkdata.data.length > 6) {
|
|
|
+ pageData.value[6].data = mkdata.data[6].img_num;
|
|
|
+ pageData.value[6].data2 = mkdata.data[6].text_num;
|
|
|
+ }
|
|
|
+
|
|
|
+ if (mkdata.data.length > 7) {
|
|
|
+ pageData.value[7].data = mkdata.data[7].img_num;
|
|
|
+ pageData.value[7].data2 = mkdata.data[7].text_num;
|
|
|
+ }
|
|
|
+
|
|
|
+ if (mkdata.data.length > 8) {
|
|
|
+ pageData.value[8].data = mkdata.data[8].img_num;
|
|
|
+ pageData.value[8].data2 = mkdata.data[8].text_num;
|
|
|
+ }
|
|
|
+
|
|
|
+ if (mkdata.data.length > 9) {
|
|
|
+ pageData.value[9].data = mkdata.data[9].img_num;
|
|
|
+ pageData.value[9].data2 = mkdata.data[9].text_num;
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ } else {
|
|
|
+ ElMessage.error(mkdata.message)
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
+// 获取最新模块数据
|
|
|
+let newest = ref([]);
|
|
|
+let recommend = ref([]);
|
|
|
+async function getPageHotData(jsonString1) {
|
|
|
+ const mkdata = await requestDataPromise('/web/getWebsiteProject', {
|
|
|
+ method: 'GET',
|
|
|
+ query: {
|
|
|
+ 'id': jsonString1
|
|
|
+ },
|
|
|
+ });
|
|
|
+ console.log('mkdata_HotData', mkdata.data)
|
|
|
+ if (mkdata.code == 200) {
|
|
|
+ if (mkdata.data.length > 0) {
|
|
|
+ newest.value = mkdata.data[0].img_num;
|
|
|
+ recommend.value = mkdata.data[1].text_num;
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ ElMessage.error(mkdata.message)
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
+//4.页面数据 end ---------------------------------------->
|
|
|
+
|
|
|
+// 5.获取最新资讯和热点精选 start---------------------------------->
|
|
|
+// 5.1 最新资讯
|
|
|
+const hotNewsListdata1 = ref([])
|
|
|
+const hotNewsListdata2 = ref([])
|
|
|
+
|
|
|
+async function getPageData() {
|
|
|
+ const mkdata = await requestDataPromise('/web/getWebsiteArticlett', {
|
|
|
+ method: 'GET',
|
|
|
+ query: {
|
|
|
+ 'imgnum': 2,
|
|
|
+ 'textnum': 4,
|
|
|
+ 'placeid': 0,
|
|
|
+ 'level': 4,
|
|
|
+ 'id': 0,
|
|
|
+ },
|
|
|
+ });
|
|
|
+ // console.log('mkdata1111111', mkdata.data);
|
|
|
+ if (mkdata.code == 200) {
|
|
|
+ hotNewsListdata1.value = mkdata.data.img;
|
|
|
+ hotNewsListdata2.value = mkdata.data.text;
|
|
|
+ } else {
|
|
|
+ console.log("错误位置:获取最新资讯")
|
|
|
+ }
|
|
|
+}
|
|
|
+getPageData();
|
|
|
+
|
|
|
+// 5.2 热点精选
|
|
|
+const hotNewsList_img = ref([])
|
|
|
+const hotNewsList_text = ref([])
|
|
|
+async function getPageData2() {
|
|
|
+ const mkdata = await requestDataPromise('/web/getWebsiteArticlett', {
|
|
|
+ method: 'GET',
|
|
|
+ query: {
|
|
|
+ 'imgnum': 2,
|
|
|
+ 'textnum': 4,
|
|
|
+ 'level': 5,
|
|
|
+ 'placeid': 0,
|
|
|
+ 'id': 0
|
|
|
+ },
|
|
|
+ });
|
|
|
+ // console.log('mkdata111111222222', mkdata.data);
|
|
|
+ if (mkdata.code == 200) {
|
|
|
+ hotNewsList_img.value = mkdata.data.img;
|
|
|
+ hotNewsList_text.value = mkdata.data.text;
|
|
|
+ } else {
|
|
|
+ console.log("SSR waring ---------- SSR waring ---------- SSR waring ---------->")
|
|
|
+ console.log("错误位置:获取热点精选")
|
|
|
+ console.log("后端错误反馈:", mkdata.message)
|
|
|
+ console.log("SSR waring ---------- SSR waring ---------- SSR waring ---------->")
|
|
|
+ }
|
|
|
+}
|
|
|
+getPageData2();
|
|
|
+
|
|
|
+// 5.获取最新资讯和热点精选 end---------------------------------->
|
|
|
+
|
|
|
+//6.设置seo信息 start---------------------------------------->
|
|
|
+const setData = await requestDataPromise('/web/getWebsiteCategoryHead', {
|
|
|
+ method: 'GET',
|
|
|
+ query: {
|
|
|
+ 'catid': routeId
|
|
|
+ },
|
|
|
+});
|
|
|
+
|
|
|
+if (setData.code == 200) {
|
|
|
+ let seoTitle = setData.data.seo_title;
|
|
|
+ let seoDescription = setData.data.seo_description;
|
|
|
+ let seoKeywords = setData.data.seo_keywords;
|
|
|
+ let seoSuffix = setData.data.suffix;
|
|
|
+ let seoName = setData.data.website_name;
|
|
|
+
|
|
|
+ useSeoMeta({
|
|
|
+ title: seoTitle + "_" + seoSuffix,
|
|
|
+ meta: [
|
|
|
+ { name: 'keywords', content: seoKeywords + "_" + seoName + "_" + seoSuffix, tagPriority: 10 },
|
|
|
+ { name: 'description', content: seoDescription + "_" + seoName + "_" + seoSuffix, tagPriority: 10 }
|
|
|
+ ]
|
|
|
+ });
|
|
|
+} else {
|
|
|
+ console.log("设置频道页SEO出错!", setData.message)
|
|
|
+}
|
|
|
+//6.设置seo信息 end---------------------------------------->
|
|
|
+</script>
|
|
|
+<style lang="less" scoped>
|
|
|
+@import url(@/assets/css/project/class.less);
|
|
|
+</style>
|