Browse Source

完成打开速度优化

完成打开速度优化
dangyunlong 3 weeks ago
parent
commit
575dbbe3ab

+ 1 - 1
.nuxt/manifest/latest.json

@@ -1 +1 @@
-{"id":"dev","timestamp":1742813658420}
+{"id":"dev","timestamp":1742900333098}

+ 0 - 1
.nuxt/manifest/meta/7acb24ed-662e-4e6b-9e9e-85f64e291369.json

@@ -1 +0,0 @@
-{"id":"7acb24ed-662e-4e6b-9e9e-85f64e291369","timestamp":1742542419071,"matcher":{"static":{},"wildcard":{},"dynamic":{}},"prerendered":[]}

+ 1 - 0
.nuxt/manifest/meta/8b78e2dc-d04b-485a-b477-fca98b6cd785.json

@@ -0,0 +1 @@
+{"id":"8b78e2dc-d04b-485a-b477-fca98b6cd785","timestamp":1742896303316,"matcher":{"static":{},"wildcard":{},"dynamic":{}},"prerendered":[]}

+ 1 - 1
.nuxt/manifest/meta/dev.json

@@ -1 +1 @@
-{"id":"dev","timestamp":1742813658420,"matcher":{"static":{},"wildcard":{},"dynamic":{}},"prerendered":[]}
+{"id":"dev","timestamp":1742900333098,"matcher":{"static":{},"wildcard":{},"dynamic":{}},"prerendered":[]}

+ 3 - 3
.nuxt/nitro.json

@@ -1,5 +1,5 @@
 {
-  "date": "2025-03-24T10:54:21.345Z",
+  "date": "2025-03-25T10:58:56.008Z",
   "preset": "nitro-dev",
   "framework": {
     "name": "nuxt",
@@ -9,9 +9,9 @@
     "nitro": "2.10.4"
   },
   "dev": {
-    "pid": 13496,
+    "pid": 9572,
     "workerAddress": {
-      "socketPath": "\\\\.\\pipe\\nitro\\worker-13496-1.sock"
+      "socketPath": "\\\\.\\pipe\\nitro\\worker-9572-1.sock"
     }
   }
 }

+ 1 - 1
.nuxt/tsconfig.json

@@ -102,7 +102,7 @@
         "./imports"
       ],
       "#app-manifest": [
-        "./manifest/meta/dev"
+        "./manifest/meta/dev.json"
       ],
       "#components": [
         "./components"

+ 1 - 1
404.vue

@@ -1,6 +1,6 @@
 <template>
   <div class="errorBox">
-    <img src="./public/error/404.png" alt="">
+    <img src="https://img.bjzxtw.org.cn/pre/public/error/404.png" alt="遇到了网络错误!">
     <div @click="goHome" class="goHome">
       返回网站首页
     </div>

+ 0 - 113
app.vue

@@ -3,127 +3,14 @@
   <div class="sannong">
     <NuxtLayout>
       <NuxtPage></NuxtPage>
-      <ul class="kefu">
-        <li>
-          <el-popover ref="popover" placement="right" :width="190" trigger="hover">
-            <template #reference>
-              <img src="./public/image/qq 1.png">
-            </template>
-            <div @click="addQQFriend(2909421493)" class="qqadd">
-              <img src="./public/index/tubiao1.png" width="100">
-              <div class="qqfs">客服QQ: 2909421493</div>
-            </div>
-            <div @click="addQQFriend(213552413)" class="qqadd">
-              <img src="./public/index/tubiao2.png" width="100">
-              <div class="qqfs">通联QQ: 213552413</div>
-            </div>
-          </el-popover>
-          <h6>QQ客服</h6>
-        </li>
-        <li>
-          <el-popover ref="popover" placement="right" :width="80" trigger="hover">
-            <template #reference>
-              <img src="./public/image/dianhua 1.png">
-            </template>
-            <p>联系电话:</p>
-            <p>010-56019387</p>
-          </el-popover>
-          <h6>电话客服</h6>
-        </li>
-      </ul>
     </NuxtLayout>
   </div>
 </template>
 
 <script setup>
-import { ElPopover } from 'element-plus'
-let close = () => {
-  let kefu = document.querySelector('.kefu')
-  kefu.style.display = 'none'
-}
 
-//添加好友
-function addQQFriend(qqNumber) {
-  // 使用tencent协议唤起QQ客户端并添加好友
-  window.location.href = `tencent://message/?uin=${qqNumber}&Site=&Menu=yes`;
-}
 </script>
 
 <style lang="less" scoped>
-.kefu {
-  width: 100px;
-  // height: 445px;
-  height: 200px;
-  position: fixed;
-  // bottom: 80px;
-  // right: 129px;
-  bottom: 50px;
-  right: 10px;
 
-  >li {
-    width: 100px;
-    height: 100px;
-    margin-bottom: 15px;
-    text-align: center;
-    background-color: #fff;
-    box-shadow: 0px 4px 16px 0px rgba(0, 0, 0, 0.1);
-    border-radius: 10px;
-
-    img {
-      width: 60px;
-      height: 60px;
-      margin-top: 10px;
-    }
-
-    h6 {
-      font-family: PingFang SC, PingFang SC;
-      font-weight: 500;
-      font-size: 14px;
-      color: #666666;
-      line-height: 16px;
-    }
-
-    p {
-      font-weight: 400;
-      font-size: 12px;
-    }
-  }
-}
-
-.kefu1 {
-  width: 70px;
-  height: 70px;
-  position: fixed;
-  bottom: 0px;
-  right: 220px;
-}
-
-.zhinengwenda {
-  width: 360px;
-  height: 562px;
-  position: fixed;
-  bottom: 85px;
-  right: 220px;
-  // border: 1px solid #CCCCCC;
-  box-shadow: 0px 4px 16px 0px rgba(0, 0, 0, 0.1);
-  border-radius: 10px;
-  background-color: #fff;
-  z-index: 1000;
-}
-
-.qqadd {
-  display: block;
-  cursor: pointer;
-  text-align: center;
-  img {
-    margin-top: 20px;
-    width: 130px;
-    height: 130px;
-  }
-  .qqfs {
-    font-weight: bold;
-    font-size: 12px;
-    color: #333333; 
-  }
-}
 </style>

+ 3 - 1
assets/css/class.less

@@ -301,7 +301,7 @@ a {
                 box-sizing: border-box;
 
                 >li {
-                    width: 380px;
+                    width: 370px;
                     height: 25px;
                     line-height: 25px;
                     font-family: PingFang SC, PingFang SC;
@@ -352,6 +352,7 @@ a {
     width: 100%;
     height: 600px;
 
+
     .innerLeft {
 
         // 左侧的上半部分
@@ -495,6 +496,7 @@ a {
                         margin-top: 20px;
                         margin-bottom: 16px;
                         position: relative;
+                        overflow: hidden;
 
                         img {
                             float: left;

+ 146 - 6
assets/css/foot.less

@@ -55,11 +55,9 @@
 .call_us_box>*:nth-of-type(1){border-left:0px;}
 .foot_text_box{
     margin:40px auto 0px;text-align:center;color:#333;font-size:14px;line-height:25px;
-    p {
-        a {
-            color: #333;
-            font-size: 14px;
-        }
+    a {
+        color: #333;
+        font-size: 14px;
     }
 }
 .foot_text_box_green{color:#40663B;}   
@@ -74,4 +72,146 @@
 .foot_last_img_box img {
     width: 120px;
     height: 50px;
-}
+}
+.foot_text_html_css :deep(a) {
+    color: #333;
+    text-decoration: underline;
+}
+.foot_text_html_css :deep(img) {
+    margin: 0 5px;
+}
+//添加在线客服
+.kefu {
+    bottom: 100px;
+    height: 200px;
+    position: fixed;
+    right: 10px;
+    width: 100px;
+    .kefu_itemQQ {
+        background-color: #fff;
+        border-radius: 10px;
+        box-shadow: 0 4px 16px #0000001a;
+        height: 100px;
+        margin-bottom: 15px;
+        text-align: center;
+        width: 100px;
+        box-sizing: border-box;
+        position: relative;
+        cursor: pointer;
+        >p {
+            color: #666;
+            font-size: 14px;
+            font-weight: 500;
+            line-height: 16px;
+        }
+        >img {
+            margin-top: 10px;
+            width: 60px;
+            height: 60px;
+        }
+        &:hover {
+            .kefu_item_content_QQ {
+                display: block;
+            }
+        }
+    }
+    .kefu_itemPhone {
+        background-color: #fff;
+        border-radius: 10px;
+        box-shadow: 0 4px 16px #0000001a;
+        height: 100px;
+        margin-bottom: 15px;
+        text-align: center;
+        width: 100px;
+        box-sizing: border-box;
+        position: relative;
+        cursor: pointer;
+        >p {
+            color: #666;
+            font-size: 14px;
+            font-weight: 500;
+            line-height: 16px;
+        }
+        >img {
+            margin-top: 10px;
+            width: 60px;
+            height: 60px;
+        }
+        &:hover {
+            .kefu_item_content_phone {
+                display: block;
+            }
+        }
+    }
+    .kefu_item_content_QQ {
+        position: absolute;
+        top: -100px;
+        right: 100px;
+        background: #fff;
+        border-radius: 10px;
+        display: none;
+        width: 190px;
+        height: 330px;
+        background: #fff;
+        box-shadow: 0 4px 16px #0000001a;
+        z-index: 99;
+        box-sizing: border-box;
+        padding: 20px;
+        img {
+            margin-bottom: 10px;
+        }
+        .qqfs {
+            margin-bottom: 20px;
+            font-size: 14px;
+            color: #333;
+        }
+        .arrow {
+            width: 0;
+            height: 0;
+            width: 0;
+            border-top: 20px solid transparent;
+            border-bottom: 20px solid transparent; 
+            border-left: 20px solid #fff; 
+            position: absolute;
+            top: 120px;
+            right: -20px;
+            transform: translateX(-50%);
+            z-index: 100;
+        }
+    }
+    .kefu_item_content_phone {
+        position: absolute;
+        top: 0;
+        right: 100px;
+        background: #fff;
+        border-radius: 10px;
+        display: none;
+        width: 190px;
+        height: 80px;
+        background: #fff;
+        box-shadow: 0 4px 16px #0000001a;
+        z-index: 99;
+        box-sizing: border-box;
+        padding: 20px;
+        text-align: left;
+        color: #333;
+        .kefu_item_content_phone_title {
+            margin-bottom: 5px;
+            font-weight: bold;
+        }
+        .arrow {
+            width: 0;
+            height: 0;
+            width: 0;
+            border-top: 20px solid transparent;
+            border-bottom: 20px solid transparent; 
+            border-left: 20px solid #fff; 
+            position: absolute;
+            top: 20px;
+            right: -20px;
+            transform: translateX(-50%);
+            z-index: 100;
+        }
+    }
+}
+

+ 52 - 32
components/home/foot.vue

@@ -22,12 +22,13 @@
             </span>
         </div>
         <div class="foot_text_box" v-if="bottomBase">
-            <p>{{ bottomBase.statistics_onetext }} <a :href="bottomBase.record_number_url" :title="中农兴业">中农兴业</a> {{ bottomBase.statistics_twotext }}</p>
-            <p>{{ bottomBase.organizer }} <a :href="currentDomain" :title="webSiteName">{{ webSiteName }}</a> {{ webSiteUrl }} 版权所有。</p>
-            <p><a :href="bottomBase.record_number_url" title="ICP备案号">{{ bottomBase.record_number }}</a> &nbsp;&nbsp; <img :src="bottomBase.icp_number_img"><a :href="bottomBase.icp_number_url" title="京公网安备案号">{{ bottomBase.icp_number }}</a> </p>
-            <p>{{ bottomBase.email }}</p>
-            <p>{{ bottomBase.company_address }}</p>
-            <p>{{ bottomBase.contact_number }}</p>
+            <p v-html="bottomBase.statement" class="foot_text_html_css"></p>
+            <p v-html="bottomBase.organizer" class="foot_text_html_css"></p>
+            <p v-html="bottomBase.copyright_information" class="foot_text_html_css"></p>
+            <p><span v-html="bottomBase.icp_number" class="foot_text_html_css"></span><span v-html="bottomBase.record_number" class="foot_text_html_css"></span></p>
+            <p v-html="bottomBase.email" class="foot_text_html_css"></p>
+            <p v-html="bottomBase.company_address" class="foot_text_html_css"></p>
+            <p v-html="bottomBase.contact_number" class="foot_text_html_css"></p>
         </div>
         <div class="foot_logo_out" v-if="bottomBase">
             <a :href="'http://' + bottomBase.company_url" :title="bottomBase.company_name">
@@ -42,16 +43,56 @@
                 <img :src="item.logo_url" :alt="item.title">
             </a>
         </div>
+
+        <!--在线客服-->
+        <div class="kefu">
+            <div class="kefu_itemQQ">
+                <img src="https://img.bjzxtw.org.cn/pre/public/image/qq1.png">
+                <p>QQ客服</p>
+                <div class="kefu_item_content_QQ">
+                    <div @click="addQQFriend(qq1)" class="qqadd">
+                        <img src="https://img.bjzxtw.org.cn/pre/public/index/tubiao1.png" width="100">
+                        <div class="qqfs">{{bottomBase.customer_service_qq}}</div>
+                    </div>
+                    <div @click="addQQFriend(qq2)" class="qqadd">
+                        <img src="https://img.bjzxtw.org.cn/pre/public/index/tubiao2.png" width="100">
+                        <div class="qqfs">{{bottomBase.communications}}</div>
+                    </div>
+                    <div class="arrow"></div>
+                </div>
+            </div>
+            <div class="kefu_itemPhone">
+                <img src="https://img.bjzxtw.org.cn/pre/public/image/dianhua1.png">
+                <p>电话客服</p>
+                <div class="kefu_item_content_phone">
+                    <div class="kefu_item_content_phone_title">联系电话:</div>
+                    <div>{{bottomBase.customer_service}}</div>
+                    <div class="arrow"></div>
+                </div>
+            </div>
+        </div>
  	</footer>	
 </template>
 
 <script setup>
+//0.添加网站客服 start---------------------------------------->
+//添加网站客服
+function addQQFriend(qqNumber) {
+    // 使用tencent协议唤起QQ客户端并添加好友
+    window.location.href = `tencent://message/?uin=${qqNumber}&Site=&Menu=yes`;
+}
+//0.添加网站客服 end---------------------------------------->
+
 //获得底部基本信息 start---------------------------------------->
 //1.获得全部友情链接与底部图片
 const bottomLink = ref([])
 const bottomText = ref([])
 const bottomphoto = ref([])
 const bottomMenu = ref([])
+const bottomBase = ref({})
+
+const qq1 = ref("")
+const qq2 = ref("")
 
 async function getModelDataAll() {
     const mkdata =  await requestDataPromise('/web/getWebsiteFootAll', {
@@ -67,9 +108,11 @@ async function getModelDataAll() {
         bottomText.value = mkdata.data.link_text;
         bottomphoto.value = mkdata.data.link_foot;
         bottomMenu.value = mkdata.data.foot_cate;
-        // bottomBase.value = mkdata.data;
-        // webSiteName.value = mkdata.data;
-        // webSiteUrl.value = mkdata.data;
+        bottomBase.value = mkdata.data.foot_info;
+        //获取qq号数字部分
+        qq1.value = bottomBase.value.customer_service_qq.match(/\d+/g);
+        qq2.value = bottomBase.value.communications.match(/\d+/g);
+
     }else{
         console.log("SSR waring ---------- SSR waring ---------- SSR waring ---------->")
         console.log("错误位置:获取友情链接图片")
@@ -78,29 +121,6 @@ async function getModelDataAll() {
     }
 }
 getModelDataAll();
-//2.获得底部基本信息
-const bottomBase = ref({})
-const webSiteName = ref("")
-const webSiteUrl = ref("")
-async function getModelData5() {
-    const mkdata =  await requestDataPromise('/web/getWebsiteFootInfo', {
-        method: 'GET',
-        query: {
-        },
-    });
-    if(mkdata.code == 200){
-        bottomBase.value = mkdata.data.website_foot;
-        webSiteName.value = mkdata.data.website_head.title;
-        //获得最后一个域名
-        webSiteUrl.value = mkdata.data.website_head.website_url[mkdata.data.website_head.website_url.length - 1];
-    }else{
-        console.log("SSR waring ---------- SSR waring ---------- SSR waring ---------->")
-        console.log("错误位置:获取底部基本信息")
-        console.log("后端错误反馈:",mkdata.message)
-        console.log("SSR waring ---------- SSR waring ---------- SSR waring ---------->")
-    }
-}
-getModelData5();
 //获得底部基本信息 end---------------------------------------->
 </script>
 

+ 54 - 31
components/home/foot1.vue

@@ -11,12 +11,13 @@
             </span>
         </div>
         <div class="foot_text_box" v-if="bottomBase">
-            <p>{{ bottomBase.statistics_onetext }} <a :href="bottomBase.record_number_url" title="中农兴业">中农兴业</a> {{ bottomBase.statistics_twotext }}</p>
-            <p>{{ bottomBase.organizer }} <a :href="currentDomain" :title="webSiteName">{{ webSiteName }}</a>  {{ webSiteUrl }} 版权所有。</p>
-            <p><a :href="bottomBase.record_number_url" title="ICP备案号">{{ bottomBase.record_number }}</a> &nbsp;&nbsp; <img src="http://snzxwt.org/images/beian.png"><a :href="bottomBase.icp_number_url" title="京公网安备案号">{{ bottomBase.icp_number }}</a> </p>
-            <p>{{ bottomBase.email }}</p>
-            <p>{{ bottomBase.company_address }}</p>
-            <p>{{ bottomBase.contact_number }}</p>
+            <p v-html="bottomBase.statement" class="foot_text_html_css"></p>
+            <p v-html="bottomBase.organizer" class="foot_text_html_css"></p>
+            <p v-html="bottomBase.copyright_information" class="foot_text_html_css"></p>
+            <p><span v-html="bottomBase.icp_number" class="foot_text_html_css"></span><span v-html="bottomBase.record_number" class="foot_text_html_css"></span></p>
+            <p v-html="bottomBase.email" class="foot_text_html_css"></p>
+            <p v-html="bottomBase.company_address" class="foot_text_html_css"></p>
+            <p v-html="bottomBase.contact_number" class="foot_text_html_css"></p>
         </div>
         <div class="foot_logo_out" v-if="bottomBase">
             <a :href="'http://' + bottomBase.company_url" :title="bottomBase.company_name">
@@ -27,20 +28,60 @@
             </a>
         </div>
         <div class="foot_last_img_box">
-            <a :href="item.url" v-for="(item, index) in bottomphoto">
-                <img :src="item.logo_url" alt="">
+            <a :href="item.url" v-for="(item, index) in bottomphoto" :title="item.title">
+                <img :src="item.logo_url" :alt="item.title">
             </a>
         </div>
+
+        <!--在线客服-->
+        <div class="kefu">
+            <div class="kefu_itemQQ">
+                <img src="https://img.bjzxtw.org.cn/pre/public/image/qq1.png">
+                <p>QQ客服</p>
+                <div class="kefu_item_content_QQ">
+                    <div @click="addQQFriend(qq1)" class="qqadd">
+                        <img src="https://img.bjzxtw.org.cn/pre/public/index/tubiao1.png" width="100">
+                        <div class="qqfs">{{bottomBase.customer_service_qq}}</div>
+                    </div>
+                    <div @click="addQQFriend(qq2)" class="qqadd">
+                        <img src="https://img.bjzxtw.org.cn/pre/public/index/tubiao2.png" width="100">
+                        <div class="qqfs">{{bottomBase.communications}}</div>
+                    </div>
+                    <div class="arrow"></div>
+                </div>
+            </div>
+            <div class="kefu_itemPhone">
+                <img src="https://img.bjzxtw.org.cn/pre/public/image/dianhua1.png">
+                <p>电话客服</p>
+                <div class="kefu_item_content_phone">
+                    <div class="kefu_item_content_phone_title">联系电话:</div>
+                    <div>{{bottomBase.customer_service}}</div>
+                    <div class="arrow"></div>
+                </div>
+            </div>
+        </div>
  	</footer>	
 </template>
 
 <script setup>
+//0.添加网站客服 start---------------------------------------->
+//添加网站客服
+function addQQFriend(qqNumber) {
+    // 使用tencent协议唤起QQ客户端并添加好友
+    window.location.href = `tencent://message/?uin=${qqNumber}&Site=&Menu=yes`;
+}
+//0.添加网站客服 end---------------------------------------->
+
 //获得底部基本信息 start---------------------------------------->
 //1.获得全部友情链接与底部图片
 const bottomLink = ref([])
 const bottomText = ref([])
 const bottomphoto = ref([])
 const bottomMenu = ref([])
+const bottomBase = ref({})
+
+const qq1 = ref("")
+const qq2 = ref("")
 
 async function getModelDataAll() {
     const mkdata =  await requestDataPromise('/web/getWebsiteFootAll', {
@@ -56,6 +97,11 @@ async function getModelDataAll() {
         bottomText.value = mkdata.data.link_text;
         bottomphoto.value = mkdata.data.link_foot;
         bottomMenu.value = mkdata.data.foot_cate;
+        bottomBase.value = mkdata.data.foot_info;
+        //获取qq号数字部分
+        qq1.value = bottomBase.value.customer_service_qq.match(/\d+/g);
+        qq2.value = bottomBase.value.communications.match(/\d+/g);
+
     }else{
         console.log("SSR waring ---------- SSR waring ---------- SSR waring ---------->")
         console.log("错误位置:获取友情链接图片")
@@ -64,29 +110,6 @@ async function getModelDataAll() {
     }
 }
 getModelDataAll();
-//2.获得底部基本信息
-const bottomBase = ref({})
-const webSiteName = ref("")
-const webSiteUrl = ref("")
-async function getModelData5() {
-    const mkdata =  await requestDataPromise('/web/getWebsiteFootInfo', {
-        method: 'GET',
-        query: {
-        },
-    });
-    if(mkdata.code == 200){
-        bottomBase.value = mkdata.data.website_foot;
-        webSiteName.value = mkdata.data.website_head.title;
-        //获得最后一个域名
-        webSiteUrl.value = mkdata.data.website_head.website_url[mkdata.data.website_head.website_url.length - 1];
-    }else{
-        console.log("SSR waring ---------- SSR waring ---------- SSR waring ---------->")
-        console.log("错误位置:获取底部基本信息")
-        console.log("后端错误反馈:",mkdata.message)
-        console.log("SSR waring ---------- SSR waring ---------- SSR waring ---------->")
-    }
-}
-getModelData5();
 //获得底部基本信息 end---------------------------------------->
 </script>
 

+ 3 - 3
components/home/pageHead.vue

@@ -249,12 +249,12 @@ watch(token1, (newval, oldval) => {
 const logo = ref("")
 const webSiteName = ref("")
 let getLogo = async () => {
-    const responseStatus =  await requestDataPromise('/web/getWebsiteFootInfo', {
+    const responseStatus =  await requestDataPromise('/web/getWebsiteHead', {
         method: 'GET',
         query: {},
     });
-    logo.value = responseStatus.data.website_head.logo;
-    webSiteName.value = responseStatus.data.website_head.website_name;
+    logo.value = responseStatus.data.logo;
+    webSiteName.value = responseStatus.data.website_name;
 }
 getLogo();
 //3.跳转菜单逻辑 end ---------------------------------------->

+ 37 - 23
components/home/pageNavigation.vue

@@ -42,7 +42,7 @@
                 <div class="cityTitle">
                     地方频道
                 </div>
-                <ul class="cityList">
+                <ul class="cityList" v-if="provinceList.length > 0">
                     <li v-for="item in provinceList">
                         <NuxtLink :to="{ path: `/search/search`,query:{catids:item.id}}">{{item.abbreviation}}</NuxtLink>
                     </li>
@@ -153,22 +153,22 @@ let region = ref("")
 let regionList = ref("")
 
 //选择省
-let areaArrList = async () => {
-    const mkdata =  await requestDataPromise('/web/selectWebsiteArea', {
-        method: 'GET',
-        query: {},
-    });
-    if(mkdata.code == 200){
-        provinceList.value = mkdata.data;
-    }else{
-        console.log("SSR waring ---------- SSR waring ---------- SSR waring ---------->")
-        console.log("错误位置:获取行政区划")
-        console.log("后端错误反馈:",mkdata.message)
-        console.log("SSR waring ---------- SSR waring ---------- SSR waring ---------->")
-    }
-}
-//一开始只需要获取一下省
-areaArrList();
+// let areaArrList = async () => {
+//     const mkdata =  await requestDataPromise('/web/selectWebsiteArea', {
+//         method: 'GET',
+//         query: {},
+//     });
+//     if(mkdata.code == 200){
+//         provinceList.value = mkdata.data;
+//     }else{
+//         console.log("SSR waring ---------- SSR waring ---------- SSR waring ---------->")
+//         console.log("错误位置:获取行政区划")
+//         console.log("后端错误反馈:",mkdata.message)
+//         console.log("SSR waring ---------- SSR waring ---------- SSR waring ---------->")
+//     }
+// }
+// //一开始只需要获取一下省
+// areaArrList();
 
 //选择市
 let change = async (id) => {
@@ -176,11 +176,10 @@ let change = async (id) => {
     const shengData =  await requestDataPromise('/web/selectWebsiteArea', {
         method: 'GET',
         query: {
-            'province': id,
-            'city': 0
+            'pid': id,
         },
     });
-    cityList.value = shengData.data.city;
+    cityList.value = shengData.data;
 }
 
 //选择县
@@ -189,11 +188,10 @@ let change1 = async (id) => {
     const xianData =  await requestDataPromise('/web/selectWebsiteArea', {
         method: 'GET',
         query: {
-            'province': provinceid.value,
-            'city': cityid.value
+            'pid': id,
         },
     });
-    regionList.value = xianData.data.region;
+    regionList.value = xianData.data;
 }
 //4.展示行政区划 end ---------------------------------------->
 
@@ -260,6 +258,22 @@ onMounted(async ()  => {
     } catch (error) {
         console.error('获取部门数据失败:', error);
     }
+
+    //从客户端获取行政区划
+    try {
+        const { $webUrl, $CwebUrl } = useNuxtApp();
+        const response2 = await fetch($webUrl + '/web/selectWebsiteArea', {
+            headers: {
+                'Content-Type': 'application/json',
+                'Userurl': $CwebUrl,
+                'Origin': $CwebUrl
+            }
+        });
+        const result2 = await response2.json();
+        provinceList.value = result2.data;
+    } catch (error) {
+        console.error('获取行政区划数据失败:', error);
+    }
 })
 
 </script>

+ 37 - 16
components/home/pageNavigation1.vue

@@ -55,7 +55,7 @@
 <script setup>
 //1.加载依赖 start ---------------------------------------->
 import { ElMessage } from 'element-plus'
-import { ref } from 'vue';
+import { ref,onMounted } from 'vue';
 import { ElSelect, ElOption } from 'element-plus'
 
 const nuxtApp = useNuxtApp();
@@ -121,22 +121,43 @@ let regionid = ref("")
 let regionList = ref("")
 
 //选择省
-let areaArrList = async () => {
-    const mkdata =  await requestDataPromise('/web/selectWebsiteArea', {
-        method: 'GET',
-        query: {},
-    });
-    if(mkdata.code == 200){
-        provinceList.value = mkdata.data;
-    }else{
-        console.log("SSR waring ---------- SSR waring ---------- SSR waring ---------->")
-        console.log("错误位置:获取行政区划")
-        console.log("后端错误反馈:",mkdata.message)
-        console.log("SSR waring ---------- SSR waring ---------- SSR waring ---------->")
+// let areaArrList = async () => {
+//     const mkdata =  await requestDataPromise('/web/selectWebsiteArea', {
+//         method: 'GET',
+//         query: {},
+//     });
+//     if(mkdata.code == 200){
+//         provinceList.value = mkdata.data;
+//     }else{
+//         console.log("SSR waring ---------- SSR waring ---------- SSR waring ---------->")
+//         console.log("错误位置:获取行政区划")
+//         console.log("后端错误反馈:",mkdata.message)
+//         console.log("SSR waring ---------- SSR waring ---------- SSR waring ---------->")
+//     }
+// }
+// //一开始只需要获取一下省
+// areaArrList();
+
+onMounted(async ()  => {
+    //从客户端获取行政区划
+    try {
+        const { $webUrl, $CwebUrl } = useNuxtApp();
+        const response2 = await fetch($webUrl + '/web/selectWebsiteArea', {
+            headers: {
+                'Content-Type': 'application/json',
+                'Userurl': $CwebUrl,
+                'Origin': $CwebUrl
+            }
+        });
+        const result2 = await response2.json();
+        provinceList.value = result2.data;
+    } catch (error) {
+        console.error('获取行政区划数据失败:', error);
     }
-}
-//一开始只需要获取一下省
-areaArrList();
+})
+
+
+
 
 //选择市
 let change = async (id) => {

+ 1 - 1
error.vue

@@ -1,6 +1,6 @@
 <template>
   <div class="errorBox">
-    <img src="./public/error/404.png" alt="">
+    <img src="https://img.bjzxtw.org.cn/pre/public/error/404.png" alt="遇到了网络错误!">
     <div @click="goHome" class="goHome">
       返回网站首页
     </div>

+ 5 - 0
nuxt.config.js

@@ -40,4 +40,9 @@ export default defineNuxtConfig({
       mode: 'client'
     }
   ],
+  vite: {
+    optimizeDeps: {
+      exclude: ['#app-manifest']
+    }
+  }
 })

+ 2 - 3
pages/index.vue

@@ -1500,7 +1500,7 @@ const boxData16mainData = ref([]);
 
 //3.2获得导航数据
 try {
-    const navigateData = await requestHome('/web/getWebsiteModelCategory', {
+    const navigateData = await requestDataPromise('/web/getWebsiteModelCategory', {
         method: 'GET',
         query: {
             'placeid': 1,
@@ -1706,11 +1706,10 @@ await getPageData(26,0,0,162,8,0,5);/////////////////////////////////////
 
 //6.设置seo数据 start---------------------------------------->
 //获取seo数据
-const setData =  await requestHome('/web/getWebsiteFootInfo', {
+const setData =  await requestDataPromise('/web/getWebsiteFootInfo', {
     method: 'GET',
     query: {},
 });
-
 if(setData.code == 200){
     let seoTitle = setData.data.website_head.title;
     let seoDescription = setData.data.website_head.description;

+ 102 - 537
pages/primaryNavigation/[id].vue

@@ -26,7 +26,7 @@
                                 <img :src="pageData[0].data[0].imgurl" :alt="pageData[0].data[0].title">
                                 <span>{{pageData[0].data[0].title }}</span>
                             </NuxtLink>
-                            <NuxtLink :to="{ path: `/newsDetail/${pageData[0].data[0].id}`, query: { listId: routeId, listName: routeName } }"
+                            <NuxtLink :to="{ path: `/newsDetail/${pageData[0].data[0].id}`}"
                                 v-if="pageData[0].data[0]&&pageData[0].data[0].islink==0" :title="pageData[0].data[0].title">
                                 <img :src="pageData[0].data[0].imgurl" :alt="pageData[0].data[0].title">
                                 <span>{{pageData[0].data[0].title}}</span>
@@ -38,31 +38,30 @@
                                 <span>
                                     <NuxtLink :to="item.linkurl" v-if="item.islink==1" :title="item.title">{{ item.title }}</NuxtLink>
                                     <NuxtLink
-                                        :to="{ path: `/newsDetail/${item.id}`, query: { listId: routeId, listName: routeName } }"
+                                        :to="{ path: `/newsDetail/${item.id}`}"
                                         v-if="item.islink==0" :title="item.title">{{ item.title }}
                                     </NuxtLink>
                                 </span>
                             </li>
                         </ul>
                     </div>
-                    
                     <ul class="leftBottom" v-if="pageData[0].data2[0]!=null">
                         <li v-for="item in pageData[0].data2">
                             <NuxtLink :to="item.linkurl" v-if="item.islink==1" :title="item.title">
                                 <img :src="item.imgurl" :alt="item.title">
                             </NuxtLink>
                             <NuxtLink
-                                :to="{ path: `/newsDetail/${item.id}`, query: { listId: routeId, listName: routeName } }"
+                                :to="{ path: `/newsDetail/${item.id}`}"
                                 v-if="item.islink==0" :title="item.title">
                                 <img :src="item.imgurl" :alt="item.title">
                             </NuxtLink>
                             <p>
                                 <NuxtLink :to="item.linkurl" v-if="item.islink==1" :title="item.title">{{ item.title }}</NuxtLink>
                                 <NuxtLink
-                                    :to="{ path: `/newsDetail/${item.id}`, query: { listId: routeId, listName: routeName } }"
+                                    :to="{ path: `/newsDetail/${item.id}`}"
                                     v-if="item.islink==0" :title="item.title">{{ item.title }}</NuxtLink>
                             </p>
-                        </li>
+                        </li> 
                     </ul>
                 </div>
                 
@@ -83,14 +82,14 @@
                         <li v-for="item in pageData[1].data">
                             <NuxtLink :to="item.linkurl" v-if="item.islink==1" :title="item.title">{{ item.title }}</NuxtLink>
                             <NuxtLink
-                                :to="{ path: `/newsDetail/${item.id}`, query: { listId: routeId, listName: routeName } }"
+                                :to="{ path: `/newsDetail/${item.id}`}"
                                 v-if="item.islink==0" :title="item.title">
                                 <img class="left" :src="item.imgurl" :alt="item.title">
                             </NuxtLink>
                             <p class="left">
                                 <NuxtLink :to="item.linkurl" v-if="item.islink==1" :title="item.title">{{ item.title }}</NuxtLink>
                                 <NuxtLink
-                                    :to="{ path: `/newsDetail/${item.id}`, query: { listId: routeId, listName: routeName } }"
+                                    :to="{ path: `/newsDetail/${item.id}`}"
                                     v-if="item.islink==0" :title="item.title">
                                     {{ item.title }}
                                 </NuxtLink>
@@ -116,24 +115,26 @@
                             </span>
                         </h3>
                     </div>
-                    <div class="PartTwoPhoto" v-if="pageData[2].data[0]">
-                        <NuxtLink :to="item.linkurl" v-if="pageData[2].data[0].islink==1" :title="pageData[2].data[0].title">
-                            <img :src="pageData[2].data[0].imgurl" :alt="pageData[2].data[0].title">
-                            <span>{{ pageData[2].data[0].title }}</span>
-                        </NuxtLink>
-                        <NuxtLink
-                            :to="{ path: `/newsDetail/${pageData[2].data[0].id}`, query: { listId: routeId, listName: routeName } }"
-                            v-if="pageData[2].data[0].islink==0" :title="pageData[2].data[0].title">
-                            <img :src="pageData[2].data[0].imgurl" :alt="pageData[2].data[0].title">
-                            <span>{{ pageData[2].data[0].title }}</span>
-                        </NuxtLink>
+                    <div class="PartTwoPhoto">
+                        <div v-if="pageData[2].data[0]">
+                            <NuxtLink :to="item.linkurl" v-if="pageData[2].data[0].islink==1" :title="pageData[2].data[0].title">
+                                <img :src="pageData[2].data[0].imgurl" :alt="pageData[2].data[0].title">
+                                <span>{{ pageData[2].data[0].title }}</span>
+                            </NuxtLink>
+                            <NuxtLink
+                                :to="{ path: `/newsDetail/${pageData[2].data[0].id}`}"
+                                v-if="pageData[2].data[0].islink==0" :title="pageData[2].data[0].title">
+                                <img :src="pageData[2].data[0].imgurl" :alt="pageData[2].data[0].title">
+                                <span>{{ pageData[2].data[0].title }}</span>
+                            </NuxtLink>
+                        </div>
                     </div>
                     <ul class="PartTwoList">
                         <li v-for="item in pageData[2].data2">
                             <em></em>
                             <NuxtLink :to="item.linkurl" v-if="item.islink==1" :title="item.title">{{ item.title }}</NuxtLink>
                             <NuxtLink
-                                :to="{ path: `/newsDetail/${item.id}`, query: { listId: routeId, listName: routeName } }"
+                                :to="{ path: `/newsDetail/${item.id}`}"
                                 v-if="item.islink==0" :title="item.title">{{ item.title }}</NuxtLink>
                         </li>
                     </ul>
@@ -151,24 +152,26 @@
                             </span>
                         </h3>
                     </div>
-                    <div class="PartTwoPhoto" v-if="pageData[3].data[0]">
-                        <NuxtLink :to="item.linkurl" v-if="pageData[3].data[0].islink==1" :title="pageData[3].data[0].title">
-                            <img :src="pageData[3].data[0].imgurl" :alt="pageData[3].data[0].title">
-                            <span>{{ pageData[3].data[0].title }}</span>
-                        </NuxtLink>
-                        <NuxtLink
-                            :to="{ path: `/newsDetail/${pageData[3].data[0].id}`, query: { listId: routeId, listName: routeName } }"
-                            v-if="pageData[3].data[0].islink==0" :title="pageData[3].data[0].title">
-                            <img :src="pageData[3].data[0].imgurl" :alt="pageData[3].data[0].title">
-                            <span>{{ pageData[3].data[0].title }}</span>
-                        </NuxtLink>
+                    <div class="PartTwoPhoto">
+                        <div v-if="pageData[3].data[0]">
+                            <NuxtLink :to="item.linkurl" v-if="pageData[3].data[0].islink==1" :title="pageData[3].data[0].title">
+                                <img :src="pageData[3].data[0].imgurl" :alt="pageData[3].data[0].title">
+                                <span>{{ pageData[3].data[0].title }}</span>
+                            </NuxtLink>
+                            <NuxtLink
+                                :to="{ path: `/newsDetail/${pageData[3].data[0].id}`}"
+                                v-if="pageData[3].data[0].islink==0" :title="pageData[3].data[0].title">
+                                <img :src="pageData[3].data[0].imgurl" :alt="pageData[3].data[0].title">
+                                <span>{{ pageData[3].data[0].title }}</span>
+                            </NuxtLink>
+                        </div>
                     </div>
                     <ul class="PartTwoList">
                         <li v-for="item in pageData[3].data2">
                             <em></em>
                             <NuxtLink :to="item.linkurl" v-if="item.islink==1" :title="item.title">{{ item.title }}</NuxtLink>
                             <NuxtLink
-                                :to="{ path: `/newsDetail/${item.id}`, query: { listId: routeId, listName: routeName } }"
+                                :to="{ path: `/newsDetail/${item.id}`}"
                                 v-if="item.islink==0" :title="item.title">{{ item.title }}</NuxtLink>
                         </li>
                     </ul>
@@ -186,24 +189,26 @@
                             </span>
                         </h3>
                     </div>
-                    <div class="PartTwoPhoto" v-if="pageData[4].data[0]">
-                        <NuxtLink :to="item.linkurl" v-if="pageData[4].data[0].islink==1" :title="pageData[4].data[0].title">
-                            <img :src="pageData[4].data[0].imgurl" :alt="pageData[4].data[0].title">
-                            <span>{{ pageData[4].data[0].title }}</span>
-                        </NuxtLink>
-                        <NuxtLink
-                            :to="{ path: `/newsDetail/${pageData[4].data[0].id}`, query: { listId: routeId, listName: routeName } }"
-                            v-if="pageData[4].data[0].islink==0" :title="pageData[4].data[0].title">
-                            <img :src="pageData[4].data[0].imgurl" :alt="pageData[4].data[0].title">
-                            <span>{{ pageData[4].data[0].title }}</span>
-                        </NuxtLink>
+                    <div class="PartTwoPhoto">
+                        <div v-if="pageData[4].data[0]">
+                            <NuxtLink :to="item.linkurl" v-if="pageData[4].data[0].islink==1" :title="pageData[4].data[0].title">
+                                <img :src="pageData[4].data[0].imgurl" :alt="pageData[4].data[0].title">
+                                <span>{{ pageData[4].data[0].title }}</span>
+                            </NuxtLink>
+                            <NuxtLink
+                                :to="{ path: `/newsDetail/${pageData[4].data[0].id}`}"
+                                v-if="pageData[4].data[0].islink==0" :title="pageData[4].data[0].title">
+                                <img :src="pageData[4].data[0].imgurl" :alt="pageData[4].data[0].title">
+                                <span>{{ pageData[4].data[0].title }}</span>
+                            </NuxtLink>
+                        </div>
                     </div>
                     <ul class="PartTwoList">
                         <li v-for="item in pageData[4].data2">
                             <em></em>
                             <NuxtLink :to="item.linkurl" v-if="item.islink==1" :title="item.title">{{ item.title }}</NuxtLink>
                             <NuxtLink
-                                :to="{ path: `/newsDetail/${item.id}`, query: { listId: routeId, listName: routeName } }"
+                                :to="{ path: `/newsDetail/${item.id}`}"
                                 v-if="item.islink==0" :title="item.title">
                                 {{ item.title }}
                             </NuxtLink>
@@ -230,14 +235,14 @@
                                     </span>
                                 </h3>
                             </div>
-                            <ul class="photo_text">
+                            <ul class="photo_text" v-if="pageData[5].data[0] != null">
                                 <li v-for="item in pageData[5].data">
                                     <article>
                                         <NuxtLink :to="item.linkurl" v-if="item.islink==1" :title="item.title">
                                             <img :src="item.imgurl" :alt="item.title">
                                         </NuxtLink>
                                         <NuxtLink
-                                            :to="{ path: `/newsDetail/${item.id}`, query: { listId: routeId, listName: routeName } }"
+                                            :to="{ path: `/newsDetail/${item.id}`}"
                                             v-if="item.islink==0" :title="item.title">
                                             <img :src="item.imgurl" :alt="item.title">
                                         </NuxtLink>
@@ -245,7 +250,7 @@
                                             <h5>
                                                 <NuxtLink :to="item.linkurl" v-if="item.islink==1" :title="item.title">{{ item.title }}</NuxtLink>
                                                 <NuxtLink
-                                                    :to="{ path: `/newsDetail/${item.id}`, query: { listId: routeId, listName: routeName } }"
+                                                    :to="{ path: `/newsDetail/${item.id}`}"
                                                     v-if="item.islink==0" :title="item.title">{{ item.title }}</NuxtLink>
                                             </h5>
                                             <p>
@@ -260,7 +265,7 @@
                                         <em></em>
                                         <NuxtLink :to="item.linkurl" v-if="item.islink==1" :title="item.title">{{ item.title }}</NuxtLink>
                                         <NuxtLink
-                                            :to="{ path: `/newsDetail/${item.id}`, query: { listId: routeId, listName: routeName } }"
+                                            :to="{ path: `/newsDetail/${item.id}`}"
                                             v-if="item.islink==0" :title="item.title">{{ item.title }}</NuxtLink>
                                     </article>
                                 </li>
@@ -287,7 +292,7 @@
                                             <img :src="item.imgurl" :alt="item.title">
                                         </NuxtLink>
                                         <NuxtLink
-                                            :to="{ path: `/newsDetail/${item.id}`, query: { listId: routeId, listName: routeName } }"
+                                            :to="{ path: `/newsDetail/${item.id}`}"
                                             v-if="item.islink==0" :title="item.title">
                                             <img :src="item.imgurl" :alt="item.title">
                                         </NuxtLink>
@@ -300,7 +305,7 @@
                                         <em></em>
                                         <NuxtLink :to="item.linkurl" v-if="item.islink==1" :title="item.title">{{ item.title }}</NuxtLink>
                                         <NuxtLink
-                                            :to="{ path: `/newsDetail/${item.id}`, query: { listId: routeId, listName: routeName } }"
+                                            :to="{ path: `/newsDetail/${item.id}`}"
                                             v-if="item.islink==0" :title="item.title">{{ item.title }}
                                         </NuxtLink>
                                     </article>
@@ -308,7 +313,7 @@
                             </ul>
                         </div>
                     </div>
-                    <div class="zixunBottom" v-if="pageData[7]">
+                    <div class="zixunBottom" v-if="pageData[7].data[0] != null">
                         <img class="left" :src="pageData[7].data[0].imgurl" :alt="pageData[7].data[0].title"
                             v-if="pageData[7].data[0] && hoverStatus == 0">
                         <img class="left" :src="pageData[7].data[1].imgurl" :alt="pageData[7].data[1].title"
@@ -327,17 +332,17 @@
                                     <em></em>
                                     <NuxtLink :to="item.linkurl" v-if="item.islink==1" :title="item.title">{{ item.title }}</NuxtLink>
                                     <NuxtLink
-                                        :to="{ path: `/newsDetail/${item.id}`, query: { listId: routeId, listName: routeName } }"
+                                        :to="{ path: `/newsDetail/${item.id}`}"
                                         v-if="item.islink==0" :title="item.title">{{ item.title }}</NuxtLink>
                                 </h4>
                             </li>
                         </ul>
                     </div>
                 </div>
-                <div class="innerRight" v-if="pageData.length>=9">
+                <div class="innerRight" v-if="pageData.length>=8">
                     <div class="title">
                         <h3>
-                            <NuxtLink :to="{ path: `/newsList/${pageData[7].cid}`}" v-if="pageData[8]" :title="pageData[7].alias">
+                            <NuxtLink :to="{ path: `/newsList/${pageData[7].cid}`}" :title="pageData[7].alias">
                                 {{ pageData[7].alias }}
                             </NuxtLink>
                             <span>
@@ -348,19 +353,19 @@
                         </h3>
                     </div>
                     <ul class="information">
-                        <li v-for="item in pageData[8].data">
+                        <li v-for="item in pageData[7].data2">
                             <NuxtLink :to="item.linkurl" v-if="item.islink==1" :title="item.title">
                                 <img :src="item.imgurl" :alt="item.title">
                             </NuxtLink>
                             <NuxtLink
-                                :to="{ path: `/newsDetail/${item.id}`, query: { listId: routeId, listName: routeName } }"
+                                :to="{ path: `/newsDetail/${item.id}`}"
                                 v-if="item.islink==0" :title="item.title">
                                 <img :src="item.imgurl" :alt="item.title">
                             </NuxtLink>
                             <div class="text">
                                 <h5>
                                     <NuxtLink :to="item.linkurl" v-if="item.islink==1" :title="item.title">{{ item.title }}</NuxtLink>
-                                    <NuxtLink :to="{ path: `/newsDetail/${item.id}`, query: { listId: routeId, listName: routeName } }" v-if="item.islink==0" :title="item.title">{{ item.title }}</NuxtLink>
+                                    <NuxtLink :to="{ path: `/newsDetail/${item.id}`}" v-if="item.islink==0" :title="item.title">{{ item.title }}</NuxtLink>
                                 </h5>
                                 <p>{{ item.author }}</p>
                             </div>
@@ -370,275 +375,8 @@
             </div>
         </div>
         <HomeTopTen :imgurl="adImg3" v-if="adImg3"></HomeTopTen>
-        <div class="farming" v-if="pageData.length>=10">
-            <div class="inner">
-                <div class="innerLeft">
-                    <div class="farmer" v-if="pageData.length>=10">
-                        <h3>
-                            <NuxtLink :to="{ path: `/newsList/${pageData[9].cid}`}" v-if="pageData[9]" :title="pageData[9].alias">
-                                {{ pageData[9].alias }}
-                            </NuxtLink>
-                            <span>
-                                <NuxtLink
-                                    :to="{ path: `/newsList/${pageData[9].cid}`}"
-                                    v-if="pageData[9]" :title="pageData[9].title">查看更多</NuxtLink>
-                            </span>
-                        </h3>
-                        <ul>
-                            <li v-for="item in pageData[9].data">
-                                <em></em>
-                                <span>
-                                    <NuxtLink :to="item.linkurl" v-if="item.islink==1" :title="item.title">{{ item.title }}</NuxtLink>
-                                    <NuxtLink
-                                        :to="{ path: `/newsDetail/${item.id}`, query: { listId: routeId, listName: routeName } }"
-                                        v-if="item.islink==0" :title="item.title">{{ item.title }}</NuxtLink>
-                                </span>
-                            </li>
-                        </ul>
-                    </div>
-                    <div class="farmer" v-if="pageData.length>=11">
-                        <h3>
-                            <NuxtLink :to="{ path: `/newsList/${pageData[10].cid}`}" v-if="pageData[10]" :title="pageData[10].alias">
-                                {{ pageData[10].alias }}
-                            </NuxtLink>
-                            <span>
-                                <NuxtLink
-                                    :to="{ path: `/newsList/${pageData[10].cid}`}"
-                                    v-if="pageData[10]" :title="pageData[10].title">查看更多</NuxtLink>
-                            </span>
-
-                        </h3>
-                        <ul>
-                            <li v-for="item in pageData[10].data">
-                                <em></em>
-                                <span>
-                                    <NuxtLink :to="item.linkurl" v-if="item.islink==1" :title="item.title">{{ item.title }}</NuxtLink>
-                                    <NuxtLink
-                                        :to="{ path: `/newsDetail/${item.id}`, query: { listId: routeId, listName: routeName } }"
-                                        v-if="item.islink==0" :title="item.title">{{ item.title }}</NuxtLink>
-                                </span>
-                            </li>
-                        </ul>
-                    </div>
-                </div>
-                <div class="innerRight"  v-if="pageData.length>=12">
-                    <h3>
-                        <NuxtLink :to="{ path: `/newsList/${pageData[11].cid}`}" v-if="pageData[11]" :title="pageData[11].alias">
-                            {{ pageData[11].alias }}
-                        </NuxtLink>
-                        <span>
-                            <NuxtLink
-                                :to="{ path: `/newsList/${pageData[11].cid}`}"
-                                v-if="pageData[11]" :title="pageData[11].title">查看更多</NuxtLink>
-                        </span>
-                    </h3>
-                    <div class="banner">
-                        <HomeSmallSwiper :swiperData="pageData[11].data"></HomeSmallSwiper>
-                    </div>
-                    <div class="banner_b_img">
-                        <div class="photo">
-                            <article v-for="(item, index) in pageData[11].data2">
-                                <div class="photoL" v-if="index == 0">
-                                    <NuxtLink :to="item.linkurl" v-if="item.islink==1" :title="item.title">
-                                        <img :src="item.imgurl" :alt="item.title">
-                                        <span>{{ item.title }}</span>
-                                    </NuxtLink>
-                                    <NuxtLink
-                                        :to="{ path: `/newsDetail/${item.id}`, query: { listId: routeId, listName: routeName } }"
-                                        v-if="item.islink==0" :title="item.title">
-                                        <img :src="item.imgurl" :alt="item.title">
-                                        <span>{{ item.title }}</span>
-                                    </NuxtLink>
-                                </div>
-                                <div class="photoL" v-if="index == 1">
-                                    <NuxtLink :to="item.linkurl" v-if="item.islink==1" :title="item.title">
-                                        <img :src="item.imgurl" :alt="item.title">
-                                        <span>{{ item.title }}</span>
-                                    </NuxtLink>
-                                    <NuxtLink
-                                        :to="{ path: `/newsDetail/${item.id}`, query: { listId: routeId, listName: routeName } }"
-                                        v-if="item.islink==0" :title="item.title">
-                                        <img :src="item.imgurl" :alt="item.title">
-                                        <span>{{ item.title }}</span>
-                                    </NuxtLink>
-                                </div>
-                            </article>
-                        </div>
-                    </div>
-                    <div class="banner_text_list">
-                        <ul>
-                            <li v-for="item in pageData[11].data3">
-                                <em></em>
-                                <NuxtLink :to="item.linkurl" v-if="item.islink==1" :title="item.title">
-                                    <span>{{ item.title }}</span>
-                                </NuxtLink>
-                                <NuxtLink
-                                    :to="{ path: `/newsDetail/${item.id}`, query: { listId: routeId, listName: routeName } }"
-                                    v-if="item.islink==0" :title="item.title">
-                                    <span>{{ item.title }}</span>
-                                </NuxtLink>
-                            </li>
-                        </ul>
-                    </div>
-                </div>
-            </div>
-        </div>
-
         <!-- 十强称号logo -->
         <HomeTopTen :imgurl="adImg4" v-if="adImg4"></HomeTopTen>
-
-        <!-- 第五层 -->
-        <div class="scienceEducation" v-if="pageData.length>=13">
-            <div class="inner">
-                <div class="innerLeft"  v-if="pageData.length>=13">
-                    <div class="slider">
-                        <div class="scienceTitle">
-                            <h5>
-                                <NuxtLink :to="{ path: `/newsList/${pageData[12].cid}`}" v-if="pageData[12]" :title="pageData[12].title">
-                                    {{ pageData[12].title }}
-                                </NuxtLink>
-                            </h5>
-                            
-                            <p class="title">
-                                <span v-if="pageData[12]" @click="qhtabs(1)">
-                                    <b v-if="showTabs == 1" class="active">{{ pageData[12].title1 }}</b>
-                                    <b v-else class="noSelect">{{ pageData[12].title1 }}</b>
-                                </span>
-                                <span v-if="pageData[12]" @click="qhtabs(2)">
-                                    <b v-if="showTabs == 2" class="active">{{ pageData[12].title2 }}</b>
-                                    <b v-else class="noSelect">{{ pageData[12].title2 }}</b>
-                                </span>
-                                <span v-if="pageData[12]" @click="qhtabs(3)">
-                                    <b v-if="showTabs == 3" class="active">{{ pageData[12].title3 }}</b>
-                                    <b v-else class="noSelect">{{ pageData[12].title3 }}</b>
-                                </span>
-                                <span v-if="pageData[12]" @click="qhtabs(4)">
-                                    <b v-if="showTabs == 4" class="active">{{ pageData[12].title4 }}</b>
-                                    <b v-else class="noSelect">{{ pageData[12].title4 }}</b>
-                                </span>
-                            </p>
-                        </div>
-                        <div class="box">
-                            <div class="scienceListBox">
-                                <ul class="scienceList" v-if="showTabs == 1">
-                                    <li v-for="item in pageData[12].data1">
-                                        <NuxtLink :to="item.linkurl" v-if="item.islink==1" :title="item.title"><img :src="item.imgurl" :alt="item.title"></NuxtLink>
-                                        <NuxtLink
-                                            :to="{ path: `/newsDetail/${item.id}`, query: { listId: routeId, listName: routeName } }"
-                                            v-if="item.islink==0" :title="item.title"><img :src="item.imgurl" :alt="item.title"></NuxtLink>
-                                        <p>
-                                            <NuxtLink :to="item.linkurl" v-if="item.islink==1" :title="item.title">{{ item.title }}</NuxtLink>
-                                            <NuxtLink
-                                                :to="{ path: `/newsDetail/${item.id}`, query: { listId: routeId, listName: routeName } }"
-                                                v-if="item.islink==0" :title="item.title">{{ item.title }}</NuxtLink>
-                                        </p>
-                                    </li>
-                                </ul>
-                                <ul class="scienceList" v-if="showTabs == 2">
-                                    <li v-for="item in pageData[12].data2">
-                                        <NuxtLink :to="item.linkurl" v-if="item.islink==1" :title="item.title"><img :src="item.imgurl" :alt="item.title"></NuxtLink>
-                                        <NuxtLink
-                                            :to="{ path: `/newsDetail/${item.id}`, query: { listId: routeId, listName: routeName } }"
-                                            v-if="item.islink==0" :title="item.title"><img :src="item.imgurl" :alt="item.title"></NuxtLink>
-                                        <p>
-                                            <NuxtLink :to="item.linkurl" v-if="item.islink==1" :title="item.title">{{ item.title }}</NuxtLink>
-                                            <NuxtLink
-                                                :to="{ path: `/newsDetail/${item.id}`, query: { listId: routeId, listName: routeName } }"
-                                                v-if="item.islink==0" :title="item.title">{{ item.title }}</NuxtLink>
-                                        </p>
-                                    </li>
-                                </ul>
-                                <ul class="scienceList" v-if="showTabs == 3">
-                                    <li v-for="item in pageData[12].data3">
-                                        <NuxtLink :to="item.linkurl" v-if="item.islink==1" :title="item.title"><img :src="item.imgurl" :alt="item.title"></NuxtLink>
-                                        <NuxtLink
-                                            :to="{ path: `/newsDetail/${item.id}`, query: { listId: routeId, listName: routeName } }"
-                                            v-if="item.islink==0" :title="item.title"><img :src="item.imgurl" :alt="item.title"></NuxtLink>
-                                        <p>
-                                            <NuxtLink :to="item.linkurl" v-if="item.islink==1" :title="item.title">{{ item.title }}</NuxtLink>
-                                            <NuxtLink
-                                                :to="{ path: `/newsDetail/${item.id}`, query: { listId: routeId, listName: routeName } }"
-                                                v-if="item.islink==0" :title="item.title">{{ item.title }}</NuxtLink>
-                                        </p>
-                                    </li>
-                                </ul>
-                                <ul class="scienceList" v-if="showTabs == 4">
-                                    <li v-for="item in pageData[12].data4">
-                                        <img :src="item.imgurl" :alt="item.title">
-                                        <p>
-                                            <NuxtLink :to="item.linkurl" v-if="item.islink==1" :title="item.title">{{ item.title }}</NuxtLink>
-                                            <NuxtLink
-                                                :to="{ path: `/newsDetail/${item.id}`, query: { listId: routeId, listName: routeName } }"
-                                                v-if="item.islink==0" :title="item.title">{{ item.title }}</NuxtLink>
-                                        </p>
-                                    </li>
-                                </ul>
-                            </div>
-                        </div>
-                    </div>
-
-                </div>
-                <div class="innerRight" v-if="pageData.length>=14">
-                    <h3>
-                        <NuxtLink :to="{ path: `/newsList/${pageData[13].cid}`}" v-if="pageData[13]" :title="pageData[13].alias">
-                            {{ pageData[13].alias }}
-                        </NuxtLink>
-                        <span>
-                            <NuxtLink
-                                :to="{ path: `/newsList/${pageData[13].cid}`}"
-                                v-if="pageData[13]" :title="pageData[13].title">查看更多</NuxtLink>
-                        </span>
-
-                    </h3>
-                    <ul class="sannongList">
-                        <li v-for="item in pageData[13].data3">
-                            <em></em>
-                            <span>
-                                <NuxtLink :to="item.linkurl" v-if="item.islink==1" :title="item.title">{{ item.title }}</NuxtLink>
-                                <NuxtLink
-                                    :to="{ path: `/newsDetail/${item.id}`, query: { listId: routeId, listName: routeName } }"
-                                    v-if="item.islink==0" :title="item.title">{{ item.title }}</NuxtLink>
-                            </span>
-                        </li>
-                    </ul>
-                    <div class="banner">
-                        <HomeSmallSwiper :swiperData="pageData[13].data"></HomeSmallSwiper>
-                    </div>
-                    <div class="banner_b_img">
-                        <div class="photo">
-                            <article v-for="(item, index) in pageData[13].data2">
-                                <div class="photoL" v-if="index == 0">
-                                    <NuxtLink :to="item.linkurl" v-if="item.islink==1" :title="item.title">
-                                        <img :src="item.imgurl" :alt="item.title">
-                                        <span>{{ item.title }}</span>
-                                    </NuxtLink>
-                                    <NuxtLink
-                                        :to="{ path: `/newsDetail/${item.id}`, query: { listId: routeId, listName: routeName } }"
-                                        v-if="item.islink==0" :title="item.title">
-                                        <img :src="item.imgurl" :alt="item.title">
-                                        <span>{{ item.title }}</span>
-                                    </NuxtLink>
-                                </div>
-                                <div class="photoL" v-if="index == 1">
-                                    <NuxtLink :to="item.linkurl" v-if="item.islink==1" :title="item.title">
-                                        <img :src="item.imgurl" :alt="item.title">
-                                        <span>{{ item.title }}</span>
-                                    </NuxtLink>
-                                    <NuxtLink
-                                        :to="{ path: `/newsDetail/${item.id}`, query: { listId: routeId, listName: routeName } }"
-                                         v-if="item.islink==0" :title="item.title">
-                                        <img :src="item.imgurl" :alt="item.title">
-                                        <span>{{ item.title }}</span>
-                                    </NuxtLink>
-                                </div>
-                            </article>
-                        </div>
-                    </div>
-
-                </div>
-            </div>
-        </div>
-
         <!-- 页脚部分 -->
         <HomeFoot1></HomeFoot1>
     </div>
@@ -818,7 +556,7 @@ try {
         query: {
             'placeid': 1,
             'pid': routeId,
-            'num': 14
+            'num': 8
         },
     });
     if(navigateData.code == 200){
@@ -859,28 +597,6 @@ try {
         await getPageData6();
         await getPageData7();
         await getPageData8();
-        // await getPageData9();
-        // await getPageData10();
-        // await getPageData11();
-        // await getPageData12();
-        // await getPageData12_data2();
-        // await getPageData12_data3();
-        // await getPageData13();
-        // if(navSize.value>=1){
-        //     await getPageData13_data1();
-        // }
-        // if(navSize.value>=2){
-        //     await getPageData13_data2();
-        // }
-        // if(navSize.value>=3){
-        //     await getPageData13_data3();
-        // }
-        // if(navSize.value>=4){
-        //     await getPageData13_data4();
-        // }
-        // await getPageData14();
-        // await getPageData14_data2();
-        // await getPageData14_data3();
     }else{
         console.log("SSR waring ---------- SSR waring ---------- SSR waring ---------->")
         console.log("错误位置:分类页导航池")
@@ -909,11 +625,26 @@ async function getPageData(catid,img_num,text_num,modulesNum,childNavNum,childIm
         },
     });
     if(modulesNum == 1){
-        pageData.value[0].data.push(mkdata.data.img[0]);
-        pageData.value[0].data2.push(mkdata.data.img[1]);
-        pageData.value[0].data2.push(mkdata.data.img[2]);
-        pageData.value[0].data2.push(mkdata.data.img[3]);
-        pageData.value[0].data2.push(mkdata.data.img[1]);
+        if(mkdata.data.img.length > 0){
+            pageData.value[0].data.push(mkdata.data.img[0]);
+        }
+        if(mkdata.data.img.length > 1){
+            pageData.value[0].data2.push(mkdata.data.img[1]);
+        }
+        if(mkdata.data.img.length > 2){
+            pageData.value[0].data2.push(mkdata.data.img[2]);
+        }
+        if(mkdata.data.img.length > 3){
+            pageData.value[0].data2.push(mkdata.data.img[3]);
+        }
+        if(mkdata.data.img.length > 4){
+            pageData.value[0].data2.push(mkdata.data.img[4]);
+        }
+        // pageData.value[0].data.push(mkdata.data.img[0]);
+        // pageData.value[0].data2.push(mkdata.data.img[1]);
+        // pageData.value[0].data2.push(mkdata.data.img[2]);
+        // pageData.value[0].data2.push(mkdata.data.img[3]);
+        // pageData.value[0].data2.push(mkdata.data.img[4]);
         pageData.value[0].data3 = mkdata.data.text;
     }
     if(modulesNum == 2){
@@ -932,13 +663,22 @@ async function getPageData(catid,img_num,text_num,modulesNum,childNavNum,childIm
         pageData.value[4].data2 = mkdata.data.text;
     }
     if(modulesNum == 6){
-        pageData.value[5].data.push(mkdata.data.img[0]);
+        if(mkdata.data.img.length > 0){
+            pageData.value[5].data.push(mkdata.data.img[0]);
+        }
         pageData.value[5].data2 = mkdata.data.text;
-        pageData.value[7].data.push(mkdata.data.img[1]);
-        pageData.value[7].data.push(mkdata.data.img[2]);
-        pageData.value[7].data.push(mkdata.data.img[3]);
-        pageData.value[7].data.push(mkdata.data.img[4]);
-        pageData.value[7].data.push(mkdata.data.img[5]);
+        if(mkdata.data.img.length > 1){
+            pageData.value[7].data.push(mkdata.data.img[1]);
+        }
+        if(mkdata.data.img.length > 2){
+            pageData.value[7].data.push(mkdata.data.img[2]);
+        }
+        if(mkdata.data.img.length > 3){
+            pageData.value[7].data.push(mkdata.data.img[3]);
+        }
+        if(mkdata.data.img.length > 4){
+            pageData.value[7].data.push(mkdata.data.img[4]);
+        }
     }
     if(modulesNum == 7){
         pageData.value[6].data = mkdata.data.img;
@@ -946,7 +686,7 @@ async function getPageData(catid,img_num,text_num,modulesNum,childNavNum,childIm
     }
     //模块8 向后移动一个位置
     if(modulesNum == 8){
-        pageData.value[8].data = mkdata.data.img;
+        pageData.value[7].data2 = mkdata.data.img;
     }
 }
 //新农村
@@ -982,185 +722,10 @@ async function getPageData7() {
 async function getPageData8() {
     await getPageData(pageData.value[7].cid,4,0,8,0,0,0);
 }
+// 注意,为了保持模块的数量,当前固定为8个
+// 所以这里的农业天地,合并了原来是下面的7号模块
+// 而原本是7号模块的地方现在变成了8号模块
 
-
-
-
-//模块9 实践探索
-// async function getPageData9() {
-//     await getPageData(pageData.value[8].cid,4,0,9,0,0,0);
-// }
-//模块10
-// async function getPageData10() {
-//     const mkdata =  await requestDataPromise('/web/getWebsiteModelArticles', {
-//         method: 'GET',
-//         query: {
-//             'catid': pageData.value[9].cid,
-//             'level': 1,
-//             'pagesize': 10
-//         },
-//     });
-//     pageData.value[9].data = mkdata.data;
-// }
-// //模块11
-// async function getPageData11() {
-//     const mkdata =  await requestDataPromise('/web/getWebsiteModelArticles', {
-//         method: 'GET',
-//         query: {
-//             'catid': pageData.value[10].cid,
-//             'level': 1,
-//             'pagesize': 10
-//         },
-//     });
-//     pageData.value[10].data = mkdata.data;
-// }
-// //模块12
-// async function getPageData12() {
-//     const mkdata =  await requestDataPromise('/web/getWebsiteModelArticles', {
-//         method: 'GET',
-//         query: {
-//             'catid': pageData.value[11].cid,
-//             'level': 2,
-//             'pagesize': 4
-//         },
-//     });
-//     pageData.value[11].data = mkdata.data;
-// }
-
-// async function getPageData12_data2() {
-//     const mkdata =  await requestDataPromise('/web/getWebsiteModelArticles', {
-//         method: 'GET',
-//         query: {
-//             'catid': pageData.value[11].cid,
-//             'level': 3,
-//             'pagesize': 2
-//         },
-//     });
-//     pageData.value[11].data2 = mkdata.data;
-// }
-// async function getPageData12_data3() {
-//     const mkdata =  await requestDataPromise('/web/getWebsiteModelArticles', {
-//         method: 'GET',
-//         query: {
-//             'catid': pageData.value[11].cid,
-//             'level': 1,
-//             'pagesize': 5
-//         },
-//     });
-//     pageData.value[11].data3 = mkdata.data;
-// }
-// async function getPageData13() {
-//     const navData =  await requestDataPromise('/web/getWebsiteModelCategory', {
-//         method: 'GET',
-//         query: {
-//             'pid': pageData.value[12].cid,
-//             'placeid': 1,
-//             'num': 4
-//         },
-//     });
-//     let mkLength = navData.data.length;
-//     navSize.value = navData.data.length;
-//     if(mkLength != 0){
-//         for (let i = 1; i <= mkLength; i++) {
-//             if (i == 1) {
-//                 pageData.value[12].title1 = navData.data[0].name;
-//                 pageData.value[12].category_id1 = navData.data[0].category_id;
-//             }
-//             if (i == 2) {
-//                 pageData.value[12].title2 = navData.data[1].name;
-//                 pageData.value[12].category_id2 = navData.data[1].category_id;
-//             }
-//             if (i == 3) {
-//                 pageData.value[12].title3 = navData.data[2].name;
-//                 pageData.value[12].category_id3 = navData.data[2].category_id;
-//             }
-//             if (i == 4) {
-//                 pageData.value[12].title4 = navData.data[3].name;
-//                 pageData.value[12].category_id4 = navData.data[3].category_id;
-//             }
-//         }
-//     }
-// }
-
-// async function getPageData13_data1() {
-//     const mkdata =  await requestDataPromise('/web/getWebsiteModelArticles', {
-//         method: 'GET',
-//         query: {
-//             'catid': pageData.value[12].category_id1,
-//             'level': 3,
-//             'pagesize': 6
-//         },
-//     });
-//     pageData.value[12].data1 = mkdata.data;
-// }
-// async function getPageData13_data2() {
-//     const mkdata =  await requestDataPromise('/web/getWebsiteModelArticles', {
-//         method: 'GET',
-//         query: {
-//             'catid': pageData.value[12].category_id2,
-//             'level': 3,
-//             'pagesize': 6
-//         },
-//     });
-//     pageData.value[12].data2 = mkdata.data;
-// }
-// async function getPageData13_data3() {
-//     const mkdata =  await requestDataPromise('/web/getWebsiteModelArticles', {
-//         method: 'GET',
-//         query: {
-//             'catid': pageData.value[12].category_id3,
-//             'level': 3,
-//             'pagesize': 6
-//         },
-//     });
-//     pageData.value[12].data3 = mkdata.data;
-// }
-// async function getPageData13_data4() {
-//     const mkdata =  await requestDataPromise('/web/getWebsiteModelArticles', {
-//         method: 'GET',
-//         query: {
-//             'catid': pageData.value[12].category_id4,
-//             'level': 3,
-//             'pagesize': 6
-//         },
-//     });
-//     pageData.value[12].data4 = mkdata.data;
-// }
-
-// //模块14
-// async function getPageData14() {
-//     const mkdata =  await requestDataPromise('/web/getWebsiteModelArticles', {
-//         method: 'GET',
-//         query: {
-//             'catid': pageData.value[13].cid,
-//             'level': 2,
-//             'pagesize': 4
-//         },
-//     });
-//     pageData.value[13].data = mkdata.data;
-// }
-// async function getPageData14_data2() {
-//     const mkdata =  await requestDataPromise('/web/getWebsiteModelArticles', {
-//         method: 'GET',
-//         query: {
-//             'catid': pageData.value[13].cid,
-//             'level': 3,
-//             'pagesize': 2
-//         },
-//     });
-//     pageData.value[13].data2 = mkdata.data;
-// }
-// async function getPageData14_data3() {
-//     const mkdata =  await requestDataPromise('/web/getWebsiteModelArticles', {
-//         method: 'GET',
-//         query: {
-//             'catid': pageData.value[13].cid,
-//             'level': 1,
-//             'pagesize': 5
-//         },
-//     });
-//     pageData.value[13].data3 = mkdata.data;
-// }
 //3.渲染页面数据 end ---------------------------------------->
 
 //4.设置seo信息 start---------------------------------------->