提交 651a325c authored 作者: coderBryanFu's avatar coderBryanFu

update

上级 1a11a046
...@@ -1144,7 +1144,6 @@ const handleToPosi = id => { ...@@ -1144,7 +1144,6 @@ const handleToPosi = id => {
// 0 618 1240 2350 // 0 618 1240 2350
switch (id) { switch (id) {
case "position2": case "position2":
// containerRef.value.scrollTop = isShow.value ? 744 : 1090;
containerRef.value.scrollTop = isShow.value ? 844 : 1190; containerRef.value.scrollTop = isShow.value ? 844 : 1190;
break; break;
case "position3": case "position3":
...@@ -1334,6 +1333,7 @@ onMounted(async () => { ...@@ -1334,6 +1333,7 @@ onMounted(async () => {
height: 144px; height: 144px;
background: #fff; background: #fff;
overflow: hidden; overflow: hidden;
box-shadow: 0px 0px 20px 0px rgba(25, 69, 130, 0.3);
.home-main-header-center { .home-main-header-center {
margin-top: 20px; margin-top: 20px;
margin-left: 200px; margin-left: 200px;
......
...@@ -408,7 +408,7 @@ ...@@ -408,7 +408,7 @@
</el-col> </el-col>
</el-row> </el-row>
<el-row :gutter="20" style="width: 1600px; margin: 0 auto; margin-top: 39px"> <el-row :gutter="20" style="width: 1600px; margin: 0 auto; margin-top: 39px;">
<CustomTitle id="position4" title="资源库" style="margin-top: 0px" /> <CustomTitle id="position4" title="资源库" style="margin-top: 0px" />
<div class="resource-tabs"> <div class="resource-tabs">
<div <div
...@@ -2868,9 +2868,8 @@ const handleMediaClick = item => { ...@@ -2868,9 +2868,8 @@ const handleMediaClick = item => {
.home-main-footer { .home-main-footer {
// width: 100%; // width: 100%;
height: 911px; // height: 911px;
background: rgba(248, 249, 250, 1); background: rgba(248, 249, 250, 1);
.home-main-footer-header { .home-main-footer-header {
margin-top: 37px; margin-top: 37px;
margin-bottom: 36px; margin-bottom: 36px;
...@@ -3156,7 +3155,7 @@ const handleMediaClick = item => { ...@@ -3156,7 +3155,7 @@ const handleMediaClick = item => {
.all-content { .all-content {
width: 100%; width: 100%;
height: auto; height: auto;
padding-bottom: 100px; padding-bottom: 30px;
display: flex; display: flex;
justify-content: space-between; justify-content: space-between;
// align-items: center; // align-items: center;
......
<template> <template>
<div class="home-wrapper"> <div class="home-wrapper">
<div class="home-main"> <div class="search-header" v-show="isShow">
<div class="home-main-header-center">
<el-input
v-model="searchThinktankText"
@keyup.enter="handleSearch"
style="width: 680px; height: 100%"
placeholder="搜索智库报告"
/>
<div class="search">
<div class="search-icon">
<img src="./assets/images/search-icon.png" alt="" />
</div>
<div class="search-text" @click="handleSearch">搜索</div>
</div>
</div>
<div class="home-main-header-btn-box">
<div class="btn" @click="handleToPosi('position1')">
<div class="btn-text">{{ "最新动态" }}</div>
<div class="btn-icon">
<img src="@/assets/icons/arrow-right-icon.png" alt="" />
</div>
</div>
<div class="btn" @click="handleToPosi('position2')">
<div class="btn-text">{{ "资讯要闻" }}</div>
<div class="btn-icon">
<img src="@/assets/icons/arrow-right-icon.png" alt="" />
</div>
</div>
<div class="btn" @click="handleToPosi('position3')">
<div class="btn-text">{{ "数据总览" }}</div>
<div class="btn-icon">
<img src="@/assets/icons/arrow-right-icon.png" alt="" />
</div>
</div>
<div class="btn" @click="handleToPosi('position4')">
<div class="btn-text">{{ "资源库" }}</div>
<div class="btn-icon">
<img src="@/assets/icons/arrow-right-icon.png" alt="" />
</div>
</div>
</div>
</div>
<div class="home-main" :class="{ scrollHomeMain: isShow }" ref="containerRef">
<div class="home-main-header"> <div class="home-main-header">
<div class="home-main-header-top"> <div class="home-main-header-top" v-show="!isShow">
<div class="header-left"> <div class="header-left">
<HeaderMenu></HeaderMenu> <HeaderMenu></HeaderMenu>
</div> </div>
...@@ -10,8 +52,13 @@ ...@@ -10,8 +52,13 @@
<headerInfo curTitleName="科技智库"></headerInfo> <headerInfo curTitleName="科技智库"></headerInfo>
</div> </div>
</div> </div>
<div class="home-main-header-center"> <div class="home-main-header-center" v-show="!isShow">
<el-input v-model="searchThinktankText" @keyup.enter="handleSearch" style="width: 838px; height: 100%" placeholder="搜索智库报告" /> <el-input
v-model="searchThinktankText"
@keyup.enter="handleSearch"
style="width: 838px; height: 100%"
placeholder="搜索智库报告"
/>
<div class="search"> <div class="search">
<div class="search-icon"> <div class="search-icon">
<img src="./assets/images/search-icon.png" alt="" /> <img src="./assets/images/search-icon.png" alt="" />
...@@ -37,26 +84,26 @@ ...@@ -37,26 +84,26 @@
<div class="item-footer">热点科技领域</div> <div class="item-footer">热点科技领域</div>
</div> </div>
</div> --> </div> -->
<div class="home-main-header-btn-box"> <div class="home-main-header-btn-box" v-show="!isShow">
<div class="btn" @click="scrollToTop('position1')"> <div class="btn" @click="handleToPosi('position1')">
<div class="btn-text">{{ "最新动态" }}</div> <div class="btn-text">{{ "最新动态" }}</div>
<div class="btn-icon"> <div class="btn-icon">
<img src="@/assets/icons/arrow-right-icon.png" alt="" /> <img src="@/assets/icons/arrow-right-icon.png" alt="" />
</div> </div>
</div> </div>
<div class="btn" @click="scrollToTop('position2')"> <div class="btn" @click="handleToPosi('position2')">
<div class="btn-text">{{ "资讯要闻" }}</div> <div class="btn-text">{{ "资讯要闻" }}</div>
<div class="btn-icon"> <div class="btn-icon">
<img src="@/assets/icons/arrow-right-icon.png" alt="" /> <img src="@/assets/icons/arrow-right-icon.png" alt="" />
</div> </div>
</div> </div>
<div class="btn" @click="scrollToTop('position3')"> <div class="btn" @click="handleToPosi('position3')">
<div class="btn-text">{{ "数据总览" }}</div> <div class="btn-text">{{ "数据总览" }}</div>
<div class="btn-icon"> <div class="btn-icon">
<img src="@/assets/icons/arrow-right-icon.png" alt="" /> <img src="@/assets/icons/arrow-right-icon.png" alt="" />
</div> </div>
</div> </div>
<div class="btn" @click="scrollToTop('position4')"> <div class="btn" @click="handleToPosi('position4')">
<div class="btn-text">{{ "资源库" }}</div> <div class="btn-text">{{ "资源库" }}</div>
<div class="btn-icon"> <div class="btn-icon">
<img src="@/assets/icons/arrow-right-icon.png" alt="" /> <img src="@/assets/icons/arrow-right-icon.png" alt="" />
...@@ -275,17 +322,16 @@ ...@@ -275,17 +322,16 @@
</div> </div>
</div> --> </div> -->
<div class="box4-main"> <div class="box4-main">
<MessageBubble <MessageBubble
v-for="(item, index) in messageList" v-for="(item, index) in messageList"
@click="handleClickPerson(item)" @click="handleClickPerson(item)"
:key="index"
:key="index" :avatar="item.personImage ? item.personImage : defaultHeaderIcin"
:avatar="item.personImage ? item.personImage : defaultHeaderIcin" :name="item.personName"
:name="item.personName" :time="item.time"
:time="item.time" :source="item.orgName"
:source="item.orgName" :content="item.remarks"
:content="item.remarks" />
/>
<!-- <div class="box4-main-item" v-for="(item, index) in messageList" :key="index"> <!-- <div class="box4-main-item" v-for="(item, index) in messageList" :key="index">
<div class="left" @click="handleClickPerson(item)"> <div class="left" @click="handleClickPerson(item)">
<img :src="item.personImage ? item.personImage : defaultHeaderIcin" alt="" /> <img :src="item.personImage ? item.personImage : defaultHeaderIcin" alt="" />
...@@ -607,6 +653,29 @@ import Box1Logo from "./assets/images/box1-logo.png"; ...@@ -607,6 +653,29 @@ import Box1Logo from "./assets/images/box1-logo.png";
import { setCanvasCreator } from "echarts/core"; import { setCanvasCreator } from "echarts/core";
import { ElMessage } from "element-plus"; import { ElMessage } from "element-plus";
import { useContainerScroll } from "@/hooks/useScrollShow";
const containerRef = ref(null);
const { isShow } = useContainerScroll(containerRef);
const handleToPosi = id => {
// 0 618 1240 2350
switch (id) {
case "position2":
// containerRef.value.scrollTop = isShow.value ? 744 : 1090;
containerRef.value.scrollTop = isShow.value ? 900 : 1150;
break;
case "position3":
containerRef.value.scrollTop = isShow.value ? 1480 : 1730;
break;
case "position4":
containerRef.value.scrollTop = isShow.value ? 2545 : 2795;
break;
default:
containerRef.value.scrollTop = 0;
}
};
const searchThinktankText = ref(""); //搜索科技人物及观点 const searchThinktankText = ref(""); //搜索科技人物及观点
// 智库列表 // 智库列表
const cardList = ref([ const cardList = ref([
...@@ -886,8 +955,8 @@ const handleGetThinkTankReportRemarks = async () => { ...@@ -886,8 +955,8 @@ const handleGetThinkTankReportRemarks = async () => {
if (res.code === 200 && res.data) { if (res.code === 200 && res.data) {
messageList.value = res.data; messageList.value = res.data;
messageList.value.forEach(item => { messageList.value.forEach(item => {
item.time = item.time.replace('T', ' ') item.time = item.time.replace("T", " ");
}) });
} }
} catch (error) { } catch (error) {
console.error("获取智库人物动态error", error); console.error("获取智库人物动态error", error);
...@@ -1536,7 +1605,7 @@ const handleGetetThinkTankReport = async () => { ...@@ -1536,7 +1605,7 @@ const handleGetetThinkTankReport = async () => {
const handleClick = tank => { const handleClick = tank => {
console.log(tank); console.log(tank);
window.sessionStorage.setItem("curTabName", tank.name+'概览'); window.sessionStorage.setItem("curTabName", tank.name + "概览");
// router.push({ name: "ThinkTankDetail", params: { id: tank.id } }); // router.push({ name: "ThinkTankDetail", params: { id: tank.id } });
if (!tank.id) { if (!tank.id) {
ElMessage.warning("当前智库id为空,无法进入详情页"); ElMessage.warning("当前智库id为空,无法进入详情页");
...@@ -1684,7 +1753,102 @@ onMounted(async () => { ...@@ -1684,7 +1753,102 @@ onMounted(async () => {
height: 100%; height: 100%;
position: relative; position: relative;
overflow-y: hidden; overflow-y: hidden;
.search-header {
width: 100%;
height: 144px;
background: #fff;
overflow: hidden;
box-shadow: 0px 0px 20px 0px rgba(25, 69, 130, 0.3);
.home-main-header-center {
margin-top: 20px;
margin-left: 200px;
width: 800px;
height: 48px;
border-radius: 10px;
box-shadow: 0px 0px 15px 0px rgba(22, 119, 255, 0.1);
background: rgba(255, 255, 255, 1);
box-sizing: border-box;
padding: 1px;
position: relative;
border: 1px solid transparent;
&:hover {
border: 1px solid var(--color-main-active);
}
.search {
position: absolute;
right: -1px;
top: 0px;
width: 120px;
height: 46px;
border-radius: 10px;
background: var(--color-main-active);
display: flex;
justify-content: center;
align-items: center;
cursor: pointer;
.search-icon {
width: 18px;
height: 18px;
img {
width: 100%;
height: 100%;
}
}
.search-text {
margin-left: 8px;
height: 22px;
color: #fff;
font-family: Microsoft YaHei;
font-size: 16px;
font-weight: 400;
line-height: 22px;
}
}
}
.home-main-header-btn-box {
margin-top: 20px;
margin-left: 200px;
display: flex;
gap: 16px;
.btn {
display: flex;
align-items: center;
gap: 9px;
width: 160px;
height: 48px;
border: 1px solid #aed6ff;
box-sizing: border-box;
border-radius: 24px;
background: #e7f3ff;
cursor: pointer;
position: relative;
&:hover {
background: #cae3fc;
}
.btn-text {
width: 80px;
color: var(--color-main-active);
font-family: Microsoft YaHei;
font-size: 20px;
font-weight: 400;
line-height: 48px;
margin-left: 36px;
text-align: center;
}
.btn-icon {
position: absolute;
top: 16px;
right: 19px;
width: 6px;
height: 12px;
img {
width: 100%;
height: 100%;
}
}
}
}
}
.home-main { .home-main {
width: 100%; width: 100%;
height: 100%; height: 100%;
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论