diff --git a/.umirc.js b/.umirc.js index 3371964..e5802a6 100644 --- a/.umirc.js +++ b/.umirc.js @@ -26,5 +26,6 @@ export default defineConfig({ { name: 'viewport', content: '' }, ], plugins: ['@umijs/plugins/dist/model'], - model: {} + model: {}, + hash: true }); diff --git a/public/css/index.css b/public/css/index.css index 45dfb63..83e40b1 100644 --- a/public/css/index.css +++ b/public/css/index.css @@ -14,6 +14,14 @@ -webkit-box-orient: vertical; -webkit-line-clamp: 2; } + +.task-hide-6 { + overflow: hidden; + text-overflow: ellipsis; + display: -webkit-box; + -webkit-box-orient: vertical; + -webkit-line-clamp: 6; +} .ant-spin-spinning { margin: auto; } diff --git a/public/image/w_qr.png b/public/image/w_qr.png new file mode 100644 index 0000000..6cc9ba4 Binary files /dev/null and b/public/image/w_qr.png differ diff --git a/src/components/memberitem/index.less b/src/components/memberitem/index.less index 9503150..23d2341 100644 --- a/src/components/memberitem/index.less +++ b/src/components/memberitem/index.less @@ -5,7 +5,8 @@ display: flex; flex-direction: column; align-items: center; - border-bottom: 1.5px solid linear-gradient(90deg,#08428e 0%,#019765 100%);; + border-bottom: 1.5px solid linear-gradient(90deg,#08428e 0%,#019765 100%); + margin-bottom: 35px; .head-img { width: 200px; height: 250px; @@ -29,11 +30,12 @@ margin-top: 15px; color: #252b3a; font-size: 15px; + line-height: 1.5; + text-align: center; } .line { - margin-top: 3px; position: absolute; - bottom: 0; + bottom: -5px; width: 100%; height: 1.5px; background-image: linear-gradient(90deg,#08428e 0%,#019765 100%); diff --git a/src/constants/info.js b/src/constants/info.js index 9f2ee7e..c9dfe0f 100644 --- a/src/constants/info.js +++ b/src/constants/info.js @@ -30,7 +30,7 @@ export const menu = [ export const defaultPage = { '/register': 1410, - '/contact': 1410 + '/contact': 1411 } export const information = { diff --git a/src/layouts/footer.jsx b/src/layouts/footer.jsx index 11280ca..3de2a79 100644 --- a/src/layouts/footer.jsx +++ b/src/layouts/footer.jsx @@ -1,11 +1,12 @@ import style from './index.module.less' +import QRCode from 'img/w_qr.png' function Footer(){ return
- +
CCF官方公众号
diff --git a/src/layouts/index.jsx b/src/layouts/index.jsx index 14a0f2b..e6173e0 100644 --- a/src/layouts/index.jsx +++ b/src/layouts/index.jsx @@ -16,7 +16,7 @@ const App = () => {
- +
diff --git a/src/layouts/index.module.less b/src/layouts/index.module.less index f090c09..1e23e7c 100644 --- a/src/layouts/index.module.less +++ b/src/layouts/index.module.less @@ -3,6 +3,7 @@ html body { font-family:PingFang SC; } .layout { + min-height: 100vh; .header { position: fixed; z-index: 1000; @@ -85,8 +86,11 @@ html body { } } .siteLayoutContent { - padding-bottom: 60px; + // padding-bottom: 60px; background: #ffffff; + flex-grow: 1; + display: flex; + flex-direction: column; } .footer { padding: 0; @@ -165,6 +169,10 @@ html body { } .header, .footer, .siteLayoutContent { min-width: 1400px; - + } + .layoutContent { + flex-grow: 1; + display: flex; + flex-direction: column; } } \ No newline at end of file diff --git a/src/pages/homePage/conferenceGuide.jsx b/src/pages/homePage/conferenceGuide.jsx index 7126159..9181352 100644 --- a/src/pages/homePage/conferenceGuide.jsx +++ b/src/pages/homePage/conferenceGuide.jsx @@ -11,6 +11,7 @@ import { history } from 'umi' function ConferenceGuide() { const [newsList, setNewsList] = useState([]) + const [showImg, setShowImg] = useState(null) useEffect(()=>{ getNewsList() @@ -39,7 +40,13 @@ function ConferenceGuide() { <>
{ newsList.map((i, k) => { - return
history.push(`/information/detail/${ i.id }`)}> + return
history.push(`/information/detail/${ i.id }`)} + onMouseOver={ () => { setShowImg( i.headImg ) } } + onMouseOut={ () => { setShowImg( null ) } } + >

{ i.name }

{ i.publishTime }

@@ -47,7 +54,7 @@ function ConferenceGuide() { })} 查看更多资讯
- + }
diff --git a/src/pages/homePage/index.jsx b/src/pages/homePage/index.jsx index ec5e7cd..c71728e 100644 --- a/src/pages/homePage/index.jsx +++ b/src/pages/homePage/index.jsx @@ -18,6 +18,7 @@ function HomePage(){ const [ active, setActive ] = useState(0) const [ fixedMenuOpacity, setFixedMenuOpacity ] = useState(0) const [ introductionOpacity, setIntroductionOpacity ] = useState(0) + const [ show, setShow ] = useState(false) const [ mainInfo, setMainInfo ] = useState({}) const [ partner, setPartner ] = useState([]) @@ -79,6 +80,13 @@ function HomePage(){ const getPartner = () => { getPartnerList().then(res => { + let noPartner = true + res.rows.map(e => { + if (e.zonePartnersList && e.zonePartnersList.length > 0) { + noPartner = false + } + }) + setShow(!noPartner) setPartner(res.rows); }).catch(console.error()) } @@ -119,7 +127,7 @@ function HomePage(){ INTRODUCTION TO THE CONFERENCE
-
{/* { mainInfo.introductionContent } */} @@ -142,7 +150,7 @@ function HomePage(){
-
+
@@ -153,7 +161,7 @@ function HomePage(){
{ - partner && partner.length > 0 ? + show ?
{ partner.map((e, k) => { @@ -163,13 +171,15 @@ function HomePage(){
{ e.typeName } -
+ {/*
*/}
{ e.zonePartnersList.map((i, subK) => { return - +
+ +
}) } @@ -198,6 +208,7 @@ function HomePage(){
*/}
+
) } diff --git a/src/pages/homePage/index.less b/src/pages/homePage/index.less index aea4bbb..004e20c 100644 --- a/src/pages/homePage/index.less +++ b/src/pages/homePage/index.less @@ -34,12 +34,12 @@ } .back-img-4 { background: url('img/homePage/back-img-4.png') no-repeat; + background-position-x: 40px; background-size: 100% 100%; width: 100%; - // height: 1295px; - position: absolute; - bottom: -60px; z-index: 0; + background-position: top 46px right 0; + padding-bottom: 60px; } .module-header { display: flex; @@ -109,7 +109,7 @@ display: flex; flex-direction: column; width:1200px; - height:399px; + // height:399px; background-color:#ffffff; border-radius:8px; box-shadow:0px 3px 8px rgba(13, 65, 197, 0.04); @@ -121,7 +121,7 @@ z-index: 100; .intro-content { width:1125px; - height:179px; + // height:179px; margin-top: 22px; background-color:#f7f9fd; border-radius:14px; @@ -130,6 +130,18 @@ padding: 20px 30px; line-height:32px; font-size: 16px; + white-space: pre-wrap; + position: relative; + &::after { + content: ""; + background-color:#f7f9fd; + height: 20px; + position: absolute; + bottom: 0; + left: 0; + width: 100%; + z-index: 10; + } } .menu { display: flex; @@ -201,6 +213,16 @@ .agenda-detail { border-top: 1px solid #aebee5; position: relative; + .top-dot { + position: absolute; + width:12px; + height:12px; + background-color:#0d41c5; + border-radius: 50%; + right: 0; + top: 0; + transform: translate(50%, -50%); + } .dashed-line { width: 85px; border-bottom: 1px dashed #0d41c5; @@ -221,9 +243,8 @@ margin-bottom: 24px; line-height: 18px; font-size: 15px; - span:not(:last-child) { - display: inline-block; - width: 180px; + span { + white-space: pre; } &::before { left: -43px; @@ -316,13 +337,14 @@ } .right-img { width: 544px; - height: 359px; + height: 374px; + object-fit: cover; } .guide-list { display: flex; flex-direction: column; width: 330px; - height: 359px; + height: 374px; overflow: visible; z-index: 10; background-color: #ffffff; @@ -331,11 +353,11 @@ height: 103px; background-color: #ffffff; border-bottom: 1px solid #e2e8f5; - padding: 13px 15px; + padding: 10px 15px; position: relative; display: flex; flex-direction: column; - justify-content: space-around; + justify-content: space-between; transition: 0.3s all; cursor: pointer; & p:first-child { @@ -343,6 +365,7 @@ font-weight:700; color:#0e1015; font-size:15px; + line-height: 1.3; } .item-time { color:#a1a5aa; @@ -353,8 +376,9 @@ height: 30px; position: absolute; right: 20px; + top: 50; opacity: 0; - transform: rotate(-45deg); + transform: rotate(-45deg) translate(0, 50%); transition: 0.5s all; } &:hover { @@ -362,7 +386,7 @@ box-shadow:0px 0px 12px rgba(91, 106, 101, 0.2); img { opacity: 1; - transform: rotate(0); + transform: rotate(0) translate(0, 50%); } .item-time { color:#0d41c5; @@ -413,14 +437,12 @@ .partner-content { display: flex; flex-wrap: wrap; + margin-top: 10px; .partner-type { - margin-top: 40px; + margin-top: 20px; margin-right: 30px; width:fit-content; height: 80px; - background-color: #ffffff; - border-radius: 8px; - box-shadow: 0px 0px 6px rgba(28, 48, 175, 0.03); display: flex; align-items: center; padding: 0 21px; @@ -431,22 +453,36 @@ font-size: 20px; span { margin-left: 8px; - margin-right: 12px; } img { width: 17px; height: 14px; } .device { - width: 0.87px; + flex-shrink: 1; + width: 1px; height: 40.39px; background-image: linear-gradient(180deg,rgba(1, 151, 101, 0) 0%,#019765 48.53%,rgba(1, 151, 101, 0) 100%); } } .type-content { + display: flex; + div { + margin-left: 25px; + padding: 6px; + background-color:#ffffff; + border-radius:4px; + box-shadow:0px 0px 6px rgba(28, 48, 175, 0.03); + height: 60px; + width: 170px; + line-height: 1; + display: flex; + align-items: center; + justify-content: center; + } img { - margin-left: 10px; max-height: 45px; + max-width: 148px; } } } @@ -472,5 +508,5 @@ } } .ant-carousel .slick-dots-bottom { - bottom: -46px; + bottom: -10px; } \ No newline at end of file diff --git a/src/pages/homePage/meetingAgenda.jsx b/src/pages/homePage/meetingAgenda.jsx index 52004ae..c2d91ab 100644 --- a/src/pages/homePage/meetingAgenda.jsx +++ b/src/pages/homePage/meetingAgenda.jsx @@ -30,19 +30,21 @@ function MeetingAgenda(){ },[activeTab, dirList]) const getMeetingAgendas = () => { - getDocList( dirList[`${activeTab}主会场`] ).then(res => { + dirList[`${activeTab}主会场`] && getDocList( dirList[`${activeTab}主会场`] ).then(res => { setMainList(res.rows) }) - setIsSpin(true) - getSubAgenda( dirList[`${activeTab}分会场`] ).then(res => { - let list = [] - res.rows.map(e => { - e.content = Base64.decode(e.content) - list.push(e) + if (dirList[`${activeTab}分会场`]) { + setIsSpin(true) + getSubAgenda( dirList[`${activeTab}分会场`] ).then(res => { + let list = [] + res.rows.map(e => { + e.content = Base64.decode(e.content) + list.push(e) + }) + setSubList(list) + setIsSpin(false) }) - setSubList(list) - setIsSpin(false) - }) + } } return
@@ -85,7 +87,9 @@ function MeetingAgenda(){ { mainList && mainList.length > 0 ? mainList.map((i,k) => { return

- { i.name } +

}): diff --git a/src/pages/information/detail.jsx b/src/pages/information/detail.jsx index 7aab1bf..f838bb0 100644 --- a/src/pages/information/detail.jsx +++ b/src/pages/information/detail.jsx @@ -37,19 +37,23 @@ function Detail() {
{ location.pathname.includes('information') && - { cmsDir && { cmsDir.name } } + { cmsDir && { cmsDir.name } } 正文 }
-
-

{ detail.name }

-
    - { cmsDir &&
  • 发布于{ cmsDir.createdAt }
  • } - { detail.visits &&
  • { detail.visits }
  • } -
-
- + { + location.pathname.includes('information') && <> +
+

{ detail.name }

+
    + { cmsDir &&
  • 发布于{ cmsDir.createdAt }
  • } + { detail.visits &&
  • { detail.visits }
  • } +
+
+ + + } { content ? diff --git a/src/pages/information/index.jsx b/src/pages/information/index.jsx index bf195ca..37dfe54 100644 --- a/src/pages/information/index.jsx +++ b/src/pages/information/index.jsx @@ -5,6 +5,7 @@ import { information } from '../../constants/info'; import { getDocList } from '../../utils/request/api' import empty from 'img/empty.png' import { useModel } from 'umi'; +import { Link } from 'umi'; function Information() { const [ isSpin , setIsSpin ] = useState(false); @@ -21,7 +22,7 @@ function Information() { setIsSpin(true); const requestList = []; information.category.map(e => { - requestList.push(getList(dirList[e.title], e.anchor)) + dirList[e.title] && requestList.push(getList(dirList[e.title], e.anchor)) }) Promise.all(requestList).then(res => { let totalList = {} @@ -76,7 +77,8 @@ function Information() { { information.category.map((e) => { - return
+ return
+

{ e.title }

{ e.eng }

@@ -89,7 +91,8 @@ function Information() {

{ e.date1 }

-

{ e.name }

+ { e.name } + {/* { e.name }

*/}

{ e.summary }

阅读全文 →
diff --git a/src/pages/information/index.less b/src/pages/information/index.less index 7eb3499..62fbe15 100644 --- a/src/pages/information/index.less +++ b/src/pages/information/index.less @@ -1,4 +1,5 @@ .information { + padding-bottom: 60px; .ant-spin-container { background: url('img/information-bg.png') no-repeat; background-size: 100% 100%; @@ -39,9 +40,14 @@ } } } + .anchor { + position: absolute; + top: -50px; + } .content { width: 1200px; margin: auto; + position: relative; .content-title { width: 531px; height: 157px; @@ -88,6 +94,7 @@ color: #252b3a; font-size: 18px; margin-top: 20px; + display: block; } .item-desc { color: #68757f; @@ -113,6 +120,8 @@ background: url('img/information-detail-bg.png') no-repeat; background-size: 100% 100%; width: 100%; + flex-grow: 1; + padding-bottom: 60px; .detail-content { width: 1200px; margin: 0px auto; diff --git a/src/pages/organization/index.less b/src/pages/organization/index.less index d44fb5a..089f16c 100644 --- a/src/pages/organization/index.less +++ b/src/pages/organization/index.less @@ -1,11 +1,12 @@ .organization { - // width: 1200px; + width: 100%; margin: auto; display: flex; flex-direction: column; align-items: center; min-height: 100vh; position: relative; + padding-bottom: 60px; .ant-spin-nested-loading { width: 1200px; } @@ -14,9 +15,10 @@ background-size: 100% auto; background-repeat: repeat-y; position: absolute; - height: calc(100% + 60px); + height: 100%; width: 100%; top: 0; + padding-bottom: 60px; } .module { display: flex;