|
@@ -31,18 +31,15 @@
|
|
<div class="innerTitle">本网招聘</div>
|
|
<div class="innerTitle">本网招聘</div>
|
|
<ul class="list">
|
|
<ul class="list">
|
|
<li v-for="(item, index) in newsList" :key="index">
|
|
<li v-for="(item, index) in newsList" :key="index">
|
|
- <NuxtLink :to="item.linkurl" target="_blank" v-show="item.islink == 1">{{ item.title }}
|
|
|
|
- </NuxtLink>
|
|
|
|
- <NuxtLink :to="{ path: `/speciaArticle/${item.id}` }" target="_blank"
|
|
|
|
- v-if="item.islink == 0">{{ item.list_title }}
|
|
|
|
- </NuxtLink>
|
|
|
|
|
|
+ <NuxtLink :to="{ path: `/speciaArticle/${item.id}` }" target="_blank">{{item.con_title}}</NuxtLink>
|
|
|
|
+ <!-- <NuxtLink :to="{ path: `/speciaArticle/${item.id}` }" target="_blank" v-if="item.islink == 0">{{ item.list_title }}</NuxtLink> -->
|
|
</li>
|
|
</li>
|
|
</ul>
|
|
</ul>
|
|
<!-- 分页器 -->
|
|
<!-- 分页器 -->
|
|
- <div class="pagination">
|
|
|
|
|
|
+ <!-- <div class="pagination">
|
|
<el-pagination size="small" background layout="prev, pager, next" :total="total" class="mt-4"
|
|
<el-pagination size="small" background layout="prev, pager, next" :total="total" class="mt-4"
|
|
prev-text="上一页" next-text="下一页" @change="changePage" />
|
|
prev-text="上一页" next-text="下一页" @change="changePage" />
|
|
- </div>
|
|
|
|
|
|
+ </div> -->
|
|
</div>
|
|
</div>
|
|
<div class="innerRight">
|
|
<div class="innerRight">
|
|
<div class="rightMenuTitle">导航列表</div>
|
|
<div class="rightMenuTitle">导航列表</div>
|
|
@@ -66,180 +63,78 @@
|
|
|
|
|
|
<script setup>
|
|
<script setup>
|
|
//1.页面依赖 start ---------------------------------------->
|
|
//1.页面依赖 start ---------------------------------------->
|
|
-import { onMounted } from 'vue';
|
|
|
|
import { ElBreadcrumb, ElBreadcrumbItem, ElPagination } from 'element-plus'
|
|
import { ElBreadcrumb, ElBreadcrumbItem, ElPagination } from 'element-plus'
|
|
import { ArrowRight } from '@element-plus/icons-vue'
|
|
import { ArrowRight } from '@element-plus/icons-vue'
|
|
-
|
|
|
|
-const nuxtApp = useNuxtApp();
|
|
|
|
-const axios = nuxtApp.$axios;
|
|
|
|
-
|
|
|
|
//获得跳转过来的id
|
|
//获得跳转过来的id
|
|
const route = useRoute();
|
|
const route = useRoute();
|
|
const pageId = route.params.id;
|
|
const pageId = route.params.id;
|
|
const routeHref = route.href;
|
|
const routeHref = route.href;
|
|
//1.页面依赖 end ---------------------------------------->
|
|
//1.页面依赖 end ---------------------------------------->
|
|
|
|
|
|
-
|
|
|
|
//2.页面数据 start ---------------------------------------->
|
|
//2.页面数据 start ---------------------------------------->
|
|
let adList = ref([]);
|
|
let adList = ref([]);
|
|
-const {data:adData,error:adError} = requestData('/web/getWebsiteFooterCategory',{method:'GET',query:{'ad_tag':'page'}});
|
|
|
|
|
|
+//广告
|
|
|
|
+const {data:adData,error:adError} = requestData('/web/getWebsiteAdvertisement',{method:'GET',query:{'ad_tag':'PAGE'}});
|
|
if (adError.value) {
|
|
if (adError.value) {
|
|
console.error('广告列表请求失败:', adError.value);
|
|
console.error('广告列表请求失败:', adError.value);
|
|
} else {
|
|
} else {
|
|
- //当有值了以后再放进去,万恶之源,也是nuxt2和3都存在的一个问题,也许nuxt4会解决这个问题
|
|
|
|
if (adData.value && adData.value.data) {
|
|
if (adData.value && adData.value.data) {
|
|
adList.value = adData.value.data;
|
|
adList.value = adData.value.data;
|
|
- console.log(adData.value.data)
|
|
|
|
}
|
|
}
|
|
}
|
|
}
|
|
-//2.页面数据 end ---------------------------------------->
|
|
|
|
-
|
|
|
|
|
|
|
|
-//4.1 设置seo信息
|
|
|
|
-async function getSeo() {
|
|
|
|
- const setData = await requestDataPromise('/web/getWebsiteFootInfo', {
|
|
|
|
|
|
+//左侧导航
|
|
|
|
+const bottomMenu = ref([]);
|
|
|
|
+async function getPageMenu() {
|
|
|
|
+ const { data: mkdata, error: mkdataError } = requestData('/web/getWebsiteFooterCategory', {
|
|
method: 'GET',
|
|
method: 'GET',
|
|
query: {},
|
|
query: {},
|
|
});
|
|
});
|
|
- seoSetup(setData.data.website_head.title,setData.data.website_head.description,setData.data.website_head.keywords)
|
|
|
|
|
|
+ if (mkdataError.value) {
|
|
|
|
+ //console.log()
|
|
|
|
+ } else {
|
|
|
|
+ if (mkdata.value) {
|
|
|
|
+ bottomMenu.value = mkdata.value.data;
|
|
|
|
+ }
|
|
|
|
+ }
|
|
}
|
|
}
|
|
-getSeo();
|
|
|
|
-//4.设置seo信息 end---------------------------------------->
|
|
|
|
-
|
|
|
|
-
|
|
|
|
-
|
|
|
|
-
|
|
|
|
-
|
|
|
|
-
|
|
|
|
-
|
|
|
|
-
|
|
|
|
-//获得广告
|
|
|
|
-// const adList = ref("");
|
|
|
|
-// const aa = 'PAGE'
|
|
|
|
-// const getadList = async () => {
|
|
|
|
-// try {
|
|
|
|
-// const response = await axios.get(`/web/getWebsiteAdvertisement?ad_tag=${aa}`);
|
|
|
|
-// adList.value = response.data;
|
|
|
|
-// } catch (error) {
|
|
|
|
-// console.error(error);
|
|
|
|
-// }
|
|
|
|
-// }
|
|
|
|
-// onMounted(() => {
|
|
|
|
-// getadList()
|
|
|
|
-// })
|
|
|
|
-
|
|
|
|
|
|
+getPageMenu();
|
|
|
|
|
|
|
|
+//列表
|
|
|
|
+const newsList = ref([]);
|
|
|
|
+let newslists = async () => {
|
|
|
|
+ const listData = await requestDataPromise('/web/getWebsiteFooterCategoryList', {
|
|
|
|
+ method: 'GET',
|
|
|
|
+ query: {
|
|
|
|
+ 'fcat_id':pageId,
|
|
|
|
+ },
|
|
|
|
+ });
|
|
|
|
+ console.log(9999)
|
|
|
|
+ newsList.value = listData.data;
|
|
|
|
+ console.log(newsList.value)
|
|
|
|
+}
|
|
|
|
+//获得列表
|
|
|
|
+newslists();
|
|
|
|
|
|
|
|
+//分页
|
|
let changePage = (value) => {
|
|
let changePage = (value) => {
|
|
console.log("当前页码", value);
|
|
console.log("当前页码", value);
|
|
page.value = value
|
|
page.value = value
|
|
console.log(page.value);
|
|
console.log(page.value);
|
|
newslists()
|
|
newslists()
|
|
}
|
|
}
|
|
|
|
+//2.页面数据 end ---------------------------------------->
|
|
|
|
|
|
-// 新闻列表
|
|
|
|
-const newsList = useState("newsList", () => '');
|
|
|
|
-const newslists = async () => {
|
|
|
|
- try {
|
|
|
|
- const response = await axios.get(`/web/getWebsiteFooterCategoryList?fcat_id=${pageId}`);
|
|
|
|
- // console.log(response.data.rows);
|
|
|
|
- newsList.value = response.data;
|
|
|
|
- //total.value = response.data.count;
|
|
|
|
- } catch (error) {
|
|
|
|
- console.error(error);
|
|
|
|
- }
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-//获得底部导航
|
|
|
|
-const bottomMenu = ref([]);
|
|
|
|
-const getBottomMenu = async () => {
|
|
|
|
- const response = await axios.get(`/web/getWebsiteFooterCategory`);
|
|
|
|
- bottomMenu.value = response.data;
|
|
|
|
|
|
+//3 设置seo信息
|
|
|
|
+async function getSeo() {
|
|
|
|
+ const setData = await requestDataPromise('/web/getWebsiteFootInfo', {
|
|
|
|
+ method: 'GET',
|
|
|
|
+ query: {},
|
|
|
|
+ });
|
|
|
|
+ seoSetup(setData.data.website_head.title,setData.data.website_head.description,setData.data.website_head.keywords)
|
|
}
|
|
}
|
|
-
|
|
|
|
-// //热点资讯
|
|
|
|
-// const hotlistall = useState("hotlistall", () => "");
|
|
|
|
-// const hotlist = async () => {
|
|
|
|
-// try {
|
|
|
|
-// const response = await axios.get(`/web/getWebsiteArticlett?pageSize=${2}&level=${4}&placeid=${1}`);
|
|
|
|
-// console.log('热点资讯', response.data);
|
|
|
|
-// for (let item of response.data) {
|
|
|
|
-// console.log(item);
|
|
|
|
-// item.count = 1;
|
|
|
|
-// }
|
|
|
|
-// hotlistall.value = response.data;
|
|
|
|
-// } catch (error) {
|
|
|
|
-// console.error(error);
|
|
|
|
-// }
|
|
|
|
-// }
|
|
|
|
-
|
|
|
|
-// //资讯推荐1
|
|
|
|
-// const news1 = useState("news1", () => "");
|
|
|
|
-// const newslist1 = async () => {
|
|
|
|
-// try {
|
|
|
|
-// const response = await axios.get(`/web/getWebsiteArticlett?pageSize=${1}&level=${5}&placeid=${1}`);
|
|
|
|
-// console.log('热点资讯', response.data);
|
|
|
|
-// news1.value = response.data;
|
|
|
|
-// } catch (error) {
|
|
|
|
-// console.error(error);
|
|
|
|
-// }
|
|
|
|
-// }
|
|
|
|
-// const news11 = useState("news11", () => "");
|
|
|
|
-// const newslist11 = async () => {
|
|
|
|
-// try {
|
|
|
|
-// const response = await axios.get(`/web/getWebsiteArticlett?pageSize=${3}&level=${5}&placeid=${1}`);
|
|
|
|
-// console.log('热点资讯', response.data);
|
|
|
|
-// news11.value = response.data;
|
|
|
|
-// } catch (error) {
|
|
|
|
-// console.error(error);
|
|
|
|
-// }
|
|
|
|
-// }
|
|
|
|
-// //资讯推荐2
|
|
|
|
-// const news2 = useState("news2", () => "");
|
|
|
|
-// const newslist2 = async () => {
|
|
|
|
-// try {
|
|
|
|
-// const response = await axios.get(`/web/getWebsiteArticlett?pageSize=${1}&level=${5}&placeid=${1}`);
|
|
|
|
-// console.log('热点资讯', response.data);
|
|
|
|
-// news2.value = response.data;
|
|
|
|
-// } catch (error) {
|
|
|
|
-// console.error(error);
|
|
|
|
-// }
|
|
|
|
-// }
|
|
|
|
-// const news22 = useState("news22", () => "");
|
|
|
|
-// const newslist22 = async () => {
|
|
|
|
-// try {
|
|
|
|
-// const response = await axios.get(`/web/getWebsiteArticlett?pageSize=${3}&level=${5}&placeid=${1}`);
|
|
|
|
-// console.log('热点资讯', response.data);
|
|
|
|
-// news22.value = response.data;
|
|
|
|
-// } catch (error) {
|
|
|
|
-// console.error(error);
|
|
|
|
-// }
|
|
|
|
-// }
|
|
|
|
-
|
|
|
|
-
|
|
|
|
-
|
|
|
|
-
|
|
|
|
-//挂载成功钩子函数
|
|
|
|
-onMounted(() => {
|
|
|
|
- // 资讯推荐
|
|
|
|
- newslists()
|
|
|
|
- // 获得左侧导航
|
|
|
|
- getBottomMenu()
|
|
|
|
- // 热点资讯
|
|
|
|
- // hotlist()
|
|
|
|
- // // 资讯推荐
|
|
|
|
- // newslist1()
|
|
|
|
- // newslist2()
|
|
|
|
- // // 热点资讯
|
|
|
|
- // newslist11()
|
|
|
|
- // newslist22()
|
|
|
|
-})
|
|
|
|
-
|
|
|
|
-//路由中间件
|
|
|
|
-definePageMeta({
|
|
|
|
- middleware: 'auth'
|
|
|
|
-})
|
|
|
|
-
|
|
|
|
|
|
+getSeo();
|
|
|
|
+//3.设置seo信息 end---------------------------------------->
|
|
</script>
|
|
</script>
|
|
|
|
|
|
<style lang="less" scoped>
|
|
<style lang="less" scoped>
|
|
@@ -343,7 +238,7 @@ definePageMeta({
|
|
>a {
|
|
>a {
|
|
width: 360px;
|
|
width: 360px;
|
|
height: 26px;
|
|
height: 26px;
|
|
-
|
|
|
|
|
|
+ cursor: pointer;
|
|
font-family: Microsoft YaHei, Microsoft YaHei;
|
|
font-family: Microsoft YaHei, Microsoft YaHei;
|
|
font-weight: 400;
|
|
font-weight: 400;
|
|
font-size: 20px;
|
|
font-size: 20px;
|