You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
136 lines
3.8 KiB
136 lines
3.8 KiB
import { useState, useEffect } from "react";
|
|
import './home.css'
|
|
import videoRef from "./img/bj1.mp4"
|
|
import headImg from "./img/head.png"
|
|
import { Carousel, message } from 'antd';
|
|
import moment from 'moment';
|
|
import bg from './img/card.png'
|
|
import bgHover from "./img/card_hover.png"
|
|
import icon1 from "./img/1.png"
|
|
import icon2 from "./img/2.png"
|
|
import icon3 from "./img/3.png"
|
|
import icon4 from "./img/4.png"
|
|
import icon5 from "./img/5.png"
|
|
import icon6 from "./img/6.png"
|
|
import icon7 from "./img/7.png"
|
|
import icon8 from "./img/8.png"
|
|
|
|
|
|
export default function Home() {
|
|
const [data, setData] = useState(false);
|
|
const weeks = ['周日', '周一', '周二', '周三', '周四', '周五', '周六'];
|
|
const [renderKey, setRenderKey] = useState(1);
|
|
// 链接类型:1-路由 2-链接 3-建设中 4-点击事件
|
|
const list = [
|
|
{
|
|
type: 1,
|
|
url: '/Main',
|
|
name: 'AI问政',
|
|
icon: icon1,
|
|
},
|
|
{
|
|
type: 1,
|
|
url: '/home/DataAnalysis',
|
|
name: '数据分析',
|
|
icon: icon2,
|
|
},
|
|
{
|
|
type: 1,
|
|
url: '/home/Tendency',
|
|
name: '趋势洞察',
|
|
icon: icon4,
|
|
},
|
|
{
|
|
type: 1,
|
|
url: '/home/ReportGeneration',
|
|
name: '报告生成',
|
|
icon: icon3,
|
|
},
|
|
{
|
|
type: 2,
|
|
url: '',
|
|
name: '文件上传',
|
|
icon: icon5,
|
|
},
|
|
{
|
|
type: 1,
|
|
url: '/home/PolicyLibrary',
|
|
name: '政策库',
|
|
icon: icon6,
|
|
},
|
|
{
|
|
type: 2,
|
|
url: '',
|
|
name: '应用管理',
|
|
icon: icon7,
|
|
},
|
|
{
|
|
type: 1,
|
|
url: '/settings/appearance',
|
|
name: '系统管理',
|
|
icon: icon8,
|
|
},
|
|
]
|
|
|
|
// 点击事件
|
|
const bindUrl = (e) => {
|
|
console.log(1234, e);
|
|
if (e.type == 1) {
|
|
window.location = e.url
|
|
} else {
|
|
message.info({
|
|
content: e.name + '开发中...'
|
|
})
|
|
}
|
|
}
|
|
|
|
//方法
|
|
useEffect(() => {
|
|
const timer = setInterval(() => {
|
|
setRenderKey(Math.random());
|
|
}, 1000);
|
|
// 组件卸载清除定时器
|
|
return () => clearInterval(timer);
|
|
}, []);
|
|
|
|
return (
|
|
<div className='box'>
|
|
{/* 背景视频 */}
|
|
<video autoPlay loop muted>
|
|
<source src={videoRef} type="video/mp4"></source>
|
|
</video>
|
|
<div className="cen_box">
|
|
<div className="head">
|
|
<div className="head1_1">阿拉善盟AI行政数据分析与决策参考系统</div>
|
|
<img src={headImg} alt="" />
|
|
<div className="head2">
|
|
<div>{moment().format('HH:mm:ss')}</div>
|
|
<div>{moment().format('YYYY年MM月DD日')} </div>
|
|
<div>{weeks[moment().day()]}</div>
|
|
</div>
|
|
</div>
|
|
<div className="content">
|
|
<Carousel draggable>
|
|
<div className="lunType">
|
|
<div className="lunType1_1">
|
|
{list.map((item, index) => (
|
|
<div key={index} className="lunType2" onClick={() => bindUrl(item)}>
|
|
<div>{item.name}</div>
|
|
<img src={item.icon} alt="" />
|
|
</div>
|
|
))}
|
|
</div>
|
|
</div>
|
|
</Carousel>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
)
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|