登录页
parent
1e7d3fcf75
commit
8469eebd3f
12
src/App.tsx
12
src/App.tsx
|
@ -1,9 +1,10 @@
|
||||||
import { memo } from 'react';
|
import { memo } from "react";
|
||||||
import type { FC } from 'react';
|
import type { FC } from "react";
|
||||||
|
|
||||||
import classes from './App.module.css';
|
import classes from "./App.module.css";
|
||||||
import resets from './components/_resets.module.css';
|
import resets from "./components/_resets.module.css";
|
||||||
import { Yidian } from './components/Yidian/Yidian';
|
import { Yidian } from "./components/Yidian/Yidian";
|
||||||
|
import { Login } from "./screen/login/login";
|
||||||
|
|
||||||
interface Props {
|
interface Props {
|
||||||
className?: string;
|
className?: string;
|
||||||
|
@ -11,6 +12,7 @@ interface Props {
|
||||||
export const App: FC<Props> = memo(function App(props = {}) {
|
export const App: FC<Props> = memo(function App(props = {}) {
|
||||||
return (
|
return (
|
||||||
<div className={`${resets.storybrainResets} ${classes.root}`}>
|
<div className={`${resets.storybrainResets} ${classes.root}`}>
|
||||||
|
<Login></Login>
|
||||||
<Yidian />
|
<Yidian />
|
||||||
</div>
|
</div>
|
||||||
);
|
);
|
||||||
|
|
|
@ -257,208 +257,6 @@ export const Yidian: FC<Props> = memo(function Yidian(props = {}) {
|
||||||
},
|
},
|
||||||
]}
|
]}
|
||||||
></Menu>
|
></Menu>
|
||||||
{/* <_OnSelected
|
|
||||||
onClick={() => setCurrentPage("dashboard")}
|
|
||||||
swap={{
|
|
||||||
notebookOne: (
|
|
||||||
<HomeTwo
|
|
||||||
className={classes.homeTwo}
|
|
||||||
classes={{ union: classes.union }}
|
|
||||||
swap={{
|
|
||||||
union: (
|
|
||||||
<div className={classes.union}>
|
|
||||||
<UnionIcon className={classes.icon} />
|
|
||||||
</div>
|
|
||||||
),
|
|
||||||
union2: <UnionIcon2 className={classes.icon2} />,
|
|
||||||
}}
|
|
||||||
/>
|
|
||||||
),
|
|
||||||
}}
|
|
||||||
text={{
|
|
||||||
normal: <div className={classes.normal}>首页</div>,
|
|
||||||
}}
|
|
||||||
/>
|
|
||||||
<_OffSelected
|
|
||||||
onClick={() => setCurrentPage("dashboard")}
|
|
||||||
text={{
|
|
||||||
normal: <div className={classes.normal2}>工作台</div>,
|
|
||||||
}}
|
|
||||||
/>
|
|
||||||
<_OffSelected
|
|
||||||
onClick={() => setCurrentPage("project")}
|
|
||||||
text={{
|
|
||||||
normal: <div className={classes.normal2}>项目信息</div>,
|
|
||||||
}}
|
|
||||||
/>
|
|
||||||
<_OffRegular
|
|
||||||
onClick={() => setCurrentPage("bigscreen")}
|
|
||||||
hide={{
|
|
||||||
point: true,
|
|
||||||
}}
|
|
||||||
text={{
|
|
||||||
normal: <div className={classes.normal3}>驾驶舱</div>,
|
|
||||||
}}
|
|
||||||
/> */}
|
|
||||||
{/* <_OnRegular
|
|
||||||
swap={{
|
|
||||||
notebookOne: (
|
|
||||||
<MessageSecurity
|
|
||||||
className={classes.messageSecurity}
|
|
||||||
swap={{
|
|
||||||
union: <UnionIcon3 className={classes.icon3} />,
|
|
||||||
union2: <UnionIcon4 className={classes.icon4} />,
|
|
||||||
union3: <UnionIcon5 className={classes.icon5} />,
|
|
||||||
union4: <UnionIcon6 className={classes.icon6} />,
|
|
||||||
}}
|
|
||||||
/>
|
|
||||||
),
|
|
||||||
}}
|
|
||||||
text={{
|
|
||||||
normal: <div className={classes.normal4}>项目管理</div>,
|
|
||||||
}}
|
|
||||||
/>
|
|
||||||
<_OffRegular
|
|
||||||
hide={{
|
|
||||||
point: true,
|
|
||||||
}}
|
|
||||||
text={{
|
|
||||||
normal: <div className={classes.normal5}>项目库</div>,
|
|
||||||
}}
|
|
||||||
/>
|
|
||||||
<_OffRegular
|
|
||||||
hide={{
|
|
||||||
point: true,
|
|
||||||
}}
|
|
||||||
text={{
|
|
||||||
normal: <div className={classes.normal6}>项目进度</div>,
|
|
||||||
}}
|
|
||||||
/>
|
|
||||||
<_OffRegular
|
|
||||||
hide={{
|
|
||||||
point: true,
|
|
||||||
}}
|
|
||||||
text={{
|
|
||||||
normal: <div className={classes.normal7}>金额汇总</div>,
|
|
||||||
}}
|
|
||||||
/>
|
|
||||||
<_OffRegular
|
|
||||||
hide={{
|
|
||||||
point: true,
|
|
||||||
}}
|
|
||||||
text={{
|
|
||||||
normal: <div className={classes.normal8}>项目支持记录单表</div>,
|
|
||||||
}}
|
|
||||||
/> */}
|
|
||||||
{/* <_OnRegular
|
|
||||||
onClick={() => setCurrentPage("customer")}
|
|
||||||
swap={{
|
|
||||||
notebookOne: (
|
|
||||||
<ViewList
|
|
||||||
className={classes.viewList}
|
|
||||||
classes={{ union: classes.union2 }}
|
|
||||||
swap={{
|
|
||||||
union: (
|
|
||||||
<div className={classes.union2}>
|
|
||||||
<UnionIcon7 className={classes.icon7} />
|
|
||||||
</div>
|
|
||||||
),
|
|
||||||
}}
|
|
||||||
/>
|
|
||||||
),
|
|
||||||
}}
|
|
||||||
hide={{
|
|
||||||
keyboard_arrow_down: true,
|
|
||||||
}}
|
|
||||||
text={{
|
|
||||||
normal: <div className={classes.normal9}>客户信息</div>,
|
|
||||||
}}
|
|
||||||
/> */}
|
|
||||||
{/* <_OnRegular
|
|
||||||
hide={{
|
|
||||||
keyboard_arrow_down: true,
|
|
||||||
}}
|
|
||||||
text={{
|
|
||||||
normal: <div className={classes.normal10}>供应商信息</div>,
|
|
||||||
}}
|
|
||||||
/> */}
|
|
||||||
{/* <_OnRegular
|
|
||||||
swap={{
|
|
||||||
notebookOne: (
|
|
||||||
<Me
|
|
||||||
className={classes.me}
|
|
||||||
classes={{ union: classes.union3 }}
|
|
||||||
swap={{
|
|
||||||
union: <UnionIcon8 className={classes.icon8} />,
|
|
||||||
union2: (
|
|
||||||
<div className={classes.union3}>
|
|
||||||
<UnionIcon9 className={classes.icon9} />
|
|
||||||
</div>
|
|
||||||
),
|
|
||||||
}}
|
|
||||||
/>
|
|
||||||
),
|
|
||||||
}}
|
|
||||||
text={{
|
|
||||||
normal: <div className={classes.normal11}>用户管理</div>,
|
|
||||||
}}
|
|
||||||
/>
|
|
||||||
<_OffRegular
|
|
||||||
hide={{
|
|
||||||
point: true,
|
|
||||||
}}
|
|
||||||
text={{
|
|
||||||
normal: <div className={classes.normal12}>用户列表</div>,
|
|
||||||
}}
|
|
||||||
/>
|
|
||||||
<_OffRegular
|
|
||||||
hide={{
|
|
||||||
point: true,
|
|
||||||
}}
|
|
||||||
text={{
|
|
||||||
normal: <div className={classes.normal13}>角色管理</div>,
|
|
||||||
}}
|
|
||||||
/>
|
|
||||||
<_OffRegular
|
|
||||||
hide={{
|
|
||||||
point: true,
|
|
||||||
}}
|
|
||||||
text={{
|
|
||||||
normal: <div className={classes.normal14}>权限管理</div>,
|
|
||||||
}}
|
|
||||||
/>
|
|
||||||
<_OnRegular
|
|
||||||
swap={{
|
|
||||||
notebookOne: (
|
|
||||||
<SettingTwo
|
|
||||||
className={classes.settingTwo}
|
|
||||||
swap={{
|
|
||||||
union: <UnionIcon10 className={classes.icon10} />,
|
|
||||||
union2: <UnionIcon11 className={classes.icon11} />,
|
|
||||||
}}
|
|
||||||
/>
|
|
||||||
),
|
|
||||||
}}
|
|
||||||
text={{
|
|
||||||
normal: <div className={classes.normal15}>系统设置</div>,
|
|
||||||
}}
|
|
||||||
/>
|
|
||||||
<_OffRegular
|
|
||||||
hide={{
|
|
||||||
point: true,
|
|
||||||
}}
|
|
||||||
text={{
|
|
||||||
normal: <div className={classes.normal16}>日志管理</div>,
|
|
||||||
}}
|
|
||||||
/>
|
|
||||||
<_OffRegular
|
|
||||||
hide={{
|
|
||||||
point: true,
|
|
||||||
}}
|
|
||||||
text={{
|
|
||||||
normal: <div className={classes.normal17}>推送管理</div>,
|
|
||||||
}}
|
|
||||||
/> */}
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div className={classes.right18}>
|
<div className={classes.right18}>
|
||||||
|
@ -1090,7 +888,7 @@ export const Yidian: FC<Props> = memo(function Yidian(props = {}) {
|
||||||
"全部(1340)",
|
"全部(1340)",
|
||||||
"A级项目(600)",
|
"A级项目(600)",
|
||||||
"B级项目(200)",
|
"B级项目(200)",
|
||||||
"C级项目(640)",
|
"C级项目(540)",
|
||||||
].map((item) => {
|
].map((item) => {
|
||||||
return {
|
return {
|
||||||
label: <span>{item}</span>,
|
label: <span>{item}</span>,
|
||||||
|
@ -1411,6 +1209,193 @@ export const Yidian: FC<Props> = memo(function Yidian(props = {}) {
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
<div className={classes.frame427319548}>
|
||||||
|
<div className={classes.frame916}>
|
||||||
|
<div className={classes.frame9127}>
|
||||||
|
<div className={classes.unnamed139}>涉及板块分析a123</div>
|
||||||
|
<div className={classes.frame9117}>
|
||||||
|
<div className={classes.text21}>查看详情</div>
|
||||||
|
<Right
|
||||||
|
className={classes.right6}
|
||||||
|
swap={{
|
||||||
|
vectorStroke: (
|
||||||
|
<VectorStrokeIcon6 className={classes.icon43} />
|
||||||
|
),
|
||||||
|
}}
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div className={classes.frame51}>
|
||||||
|
<div className={classes.frame32}>
|
||||||
|
<div className={classes.ellipse6}>
|
||||||
|
<Ellipse6Icon className={classes.icon71} />
|
||||||
|
</div>
|
||||||
|
<div className={classes.ellipse11}>
|
||||||
|
<Ellipse11Icon className={classes.icon72} />
|
||||||
|
</div>
|
||||||
|
<div className={classes.ellipse10}>
|
||||||
|
<Ellipse10Icon className={classes.icon73} />
|
||||||
|
</div>
|
||||||
|
<div className={classes.ellipse9}>
|
||||||
|
<Ellipse9Icon className={classes.icon74} />
|
||||||
|
</div>
|
||||||
|
<div className={classes.ellipse8}>
|
||||||
|
<Ellipse8Icon className={classes.icon75} />
|
||||||
|
</div>
|
||||||
|
<div className={classes.ellipse7}>
|
||||||
|
<Ellipse7Icon className={classes.icon76} />
|
||||||
|
</div>
|
||||||
|
<div className={classes.frame33}>
|
||||||
|
<div className={classes.a}>A级</div>
|
||||||
|
<div className={classes._45}>45%</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div className={classes.frame892}>
|
||||||
|
<div className={classes.frame889}>
|
||||||
|
<div className={classes.frame888}>
|
||||||
|
<_Property1
|
||||||
|
text={{
|
||||||
|
label: (
|
||||||
|
<div className={classes.label}>
|
||||||
|
云服务大数据
|
||||||
|
</div>
|
||||||
|
),
|
||||||
|
}}
|
||||||
|
/>
|
||||||
|
<div className={classes.line43}></div>
|
||||||
|
<div className={classes._64}>64.0%</div>
|
||||||
|
</div>
|
||||||
|
<div className={classes._120}>120</div>
|
||||||
|
</div>
|
||||||
|
<div className={classes.frame890}>
|
||||||
|
<div className={classes.frame8882}>
|
||||||
|
<_Property1
|
||||||
|
classes={{ square: classes.square }}
|
||||||
|
text={{
|
||||||
|
label: (
|
||||||
|
<div className={classes.label2}>智慧照明</div>
|
||||||
|
),
|
||||||
|
}}
|
||||||
|
/>
|
||||||
|
<div className={classes.line432}></div>
|
||||||
|
<div className={classes._162}>16.0%</div>
|
||||||
|
</div>
|
||||||
|
<div className={classes._30}>30</div>
|
||||||
|
</div>
|
||||||
|
<div className={classes.frame891}>
|
||||||
|
<div className={classes.frame8883}>
|
||||||
|
<_Property1
|
||||||
|
classes={{ square: classes.square2 }}
|
||||||
|
text={{
|
||||||
|
label: (
|
||||||
|
<div className={classes.label3}>智慧教卫</div>
|
||||||
|
),
|
||||||
|
}}
|
||||||
|
/>
|
||||||
|
<div className={classes.line433}></div>
|
||||||
|
<div className={classes._642}>6.4%</div>
|
||||||
|
</div>
|
||||||
|
<div className={classes._122}>12</div>
|
||||||
|
</div>
|
||||||
|
<div className={classes.frame8922}>
|
||||||
|
<div className={classes.frame8884}>
|
||||||
|
<_Property1
|
||||||
|
classes={{ square: classes.square3 }}
|
||||||
|
text={{
|
||||||
|
label: (
|
||||||
|
<div className={classes.label4}>智慧交通</div>
|
||||||
|
),
|
||||||
|
}}
|
||||||
|
/>
|
||||||
|
<div className={classes.line434}></div>
|
||||||
|
<div className={classes._643}>6.4%</div>
|
||||||
|
</div>
|
||||||
|
<div className={classes._123}>12</div>
|
||||||
|
</div>
|
||||||
|
<div className={classes.frame893}>
|
||||||
|
<div className={classes.frame8885}>
|
||||||
|
<_Property1
|
||||||
|
classes={{ square: classes.square4 }}
|
||||||
|
text={{
|
||||||
|
label: (
|
||||||
|
<div className={classes.label5}>智能安防</div>
|
||||||
|
),
|
||||||
|
}}
|
||||||
|
/>
|
||||||
|
<div className={classes.line435}></div>
|
||||||
|
<div className={classes._644}>6.4%</div>
|
||||||
|
</div>
|
||||||
|
<div className={classes._124}>12</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div className={classes.frame4273194832}>
|
||||||
|
<div className={classes.frame9128}>
|
||||||
|
<div className={classes.unnamed140}>重点项目排名</div>
|
||||||
|
<div className={classes.frame9118}>
|
||||||
|
<div className={classes.text22}>查看详情</div>
|
||||||
|
<Right
|
||||||
|
className={classes.right7}
|
||||||
|
swap={{
|
||||||
|
vectorStroke: (
|
||||||
|
<VectorStrokeIcon7 className={classes.icon44} />
|
||||||
|
),
|
||||||
|
}}
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div className={classes.frame883}>
|
||||||
|
<Frame876_Property1Variant2
|
||||||
|
className={classes.frame912}
|
||||||
|
text={{
|
||||||
|
Unnamed: (
|
||||||
|
<div className={classes.unnamed30}>
|
||||||
|
2022年标准化考点建设
|
||||||
|
</div>
|
||||||
|
),
|
||||||
|
_100: <div className={classes._100}>24</div>,
|
||||||
|
}}
|
||||||
|
/>
|
||||||
|
<Frame876_Property1Variant2
|
||||||
|
className={classes.frame913}
|
||||||
|
classes={{ rectangle678: classes.rectangle678 }}
|
||||||
|
text={{
|
||||||
|
Unnamed: (
|
||||||
|
<div className={classes.unnamed31}>
|
||||||
|
2022年标准化考点建设
|
||||||
|
</div>
|
||||||
|
),
|
||||||
|
_100: <div className={classes._1002}>24</div>,
|
||||||
|
}}
|
||||||
|
/>
|
||||||
|
<Frame876_Property1Variant2
|
||||||
|
className={classes.frame914}
|
||||||
|
classes={{ rectangle678: classes.rectangle6782 }}
|
||||||
|
text={{
|
||||||
|
Unnamed: (
|
||||||
|
<div className={classes.unnamed32}>
|
||||||
|
2022年标准化考点建设
|
||||||
|
</div>
|
||||||
|
),
|
||||||
|
_100: <div className={classes._1003}>24</div>,
|
||||||
|
}}
|
||||||
|
/>
|
||||||
|
<Frame876_Property1Variant2
|
||||||
|
className={classes.frame915}
|
||||||
|
classes={{ rectangle678: classes.rectangle6783 }}
|
||||||
|
text={{
|
||||||
|
Unnamed: (
|
||||||
|
<div className={classes.unnamed33}>
|
||||||
|
2022年标准化考点建设
|
||||||
|
</div>
|
||||||
|
),
|
||||||
|
_100: <div className={classes._1004}>24</div>,
|
||||||
|
}}
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
<div className={classes.frame4273194844}>
|
<div className={classes.frame4273194844}>
|
||||||
<div className={classes.frame9032}>
|
<div className={classes.frame9032}>
|
||||||
<div className={classes.unnamed141}>项目合作情况</div>
|
<div className={classes.unnamed141}>项目合作情况</div>
|
||||||
|
@ -1900,10 +1885,6 @@ export const Yidian: FC<Props> = memo(function Yidian(props = {}) {
|
||||||
<div className={classes.unnamed150}>查找</div>
|
<div className={classes.unnamed150}>查找</div>
|
||||||
</div>
|
</div>
|
||||||
<div className={classes.searchContentBox}>
|
<div className={classes.searchContentBox}>
|
||||||
{/* <Input
|
|
||||||
className={classes.input}
|
|
||||||
placeholder="请输入您想要查找的内容"
|
|
||||||
></Input> */}
|
|
||||||
<AutoComplete
|
<AutoComplete
|
||||||
className={classes.input}
|
className={classes.input}
|
||||||
placeholder="请输入您想要查找的内容"
|
placeholder="请输入您想要查找的内容"
|
||||||
|
@ -1935,33 +1916,6 @@ export const Yidian: FC<Props> = memo(function Yidian(props = {}) {
|
||||||
>
|
>
|
||||||
确定
|
确定
|
||||||
</Button>
|
</Button>
|
||||||
{/* <_Property1LargeProperty2Regula
|
|
||||||
className={classes.input}
|
|
||||||
text={{
|
|
||||||
text: (
|
|
||||||
<input
|
|
||||||
className={classes.text11}
|
|
||||||
placeholder="请输入您想要查找的内容"
|
|
||||||
></input>
|
|
||||||
|
|
||||||
// <div className={classes.text11}>
|
|
||||||
// 请输入您想要查找的内容
|
|
||||||
// </div>
|
|
||||||
),
|
|
||||||
}}
|
|
||||||
/> */}
|
|
||||||
{/* <Button_PrimaryLargeRegular
|
|
||||||
text={{
|
|
||||||
text: (
|
|
||||||
<div
|
|
||||||
className={classes.text12}
|
|
||||||
onClick={() => setCurrentPage("customer")}
|
|
||||||
>
|
|
||||||
确定
|
|
||||||
</div>
|
|
||||||
),
|
|
||||||
}}
|
|
||||||
/> */}
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div className={classes.quickEntry}>
|
<div className={classes.quickEntry}>
|
||||||
|
@ -2293,9 +2247,9 @@ export const Yidian: FC<Props> = memo(function Yidian(props = {}) {
|
||||||
</div>
|
</div>
|
||||||
<div className={classes.missPie}>
|
<div className={classes.missPie}>
|
||||||
<div className={classes.frame91214}>
|
<div className={classes.frame91214}>
|
||||||
<div className={classes.unnamed154}>各单位漏报情况</div>
|
<div className={classes.unnamed154}>各单位补报情况</div>
|
||||||
<div className={classes.frame91113}>
|
<div className={classes.frame91113}>
|
||||||
<div className={classes.text28}>查看详情</div>
|
<div className={classes.text28}>切换漏报汇总</div>
|
||||||
<Right
|
<Right
|
||||||
className={classes.right13}
|
className={classes.right13}
|
||||||
swap={{
|
swap={{
|
||||||
|
@ -2476,7 +2430,7 @@ export const Yidian: FC<Props> = memo(function Yidian(props = {}) {
|
||||||
"全部(1340)",
|
"全部(1340)",
|
||||||
"优秀项目(600)",
|
"优秀项目(600)",
|
||||||
"标杆项目(200)",
|
"标杆项目(200)",
|
||||||
"一般项目(640)",
|
"一般项目(540)",
|
||||||
].map((item) => {
|
].map((item) => {
|
||||||
return {
|
return {
|
||||||
label: <span>{item}</span>,
|
label: <span>{item}</span>,
|
||||||
|
|
Binary file not shown.
After Width: | Height: | Size: 114 KiB |
Binary file not shown.
After Width: | Height: | Size: 22 KiB |
Binary file not shown.
After Width: | Height: | Size: 6.0 KiB |
|
@ -0,0 +1,22 @@
|
||||||
|
.login {
|
||||||
|
position: fixed;
|
||||||
|
top:0;
|
||||||
|
left: 0;
|
||||||
|
z-index: 99999;
|
||||||
|
width: 100vw;
|
||||||
|
height: 100vh;
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
background: url(./bg.jpeg) center center no-repeat;
|
||||||
|
background-size: cover;
|
||||||
|
}
|
||||||
|
|
||||||
|
.bg {
|
||||||
|
background: url(./bg.jpeg) center center no-repeat;
|
||||||
|
background-size: cover;
|
||||||
|
}
|
||||||
|
|
||||||
|
:where(.login) :not(span, a, ul, ol, li, p) {
|
||||||
|
display: inherit;
|
||||||
|
}
|
|
@ -0,0 +1,97 @@
|
||||||
|
import { Button, Checkbox, Form, Input } from "antd";
|
||||||
|
import { FC, useState } from "react";
|
||||||
|
|
||||||
|
import clases from "./login.module.css";
|
||||||
|
import logo from "./e9.png";
|
||||||
|
import loginBox from "./login-box.png";
|
||||||
|
import bg from "./bg.jpeg";
|
||||||
|
|
||||||
|
export const Login: FC<{}> = () => {
|
||||||
|
const [isLogin, setIsLogin] = useState<boolean>(false);
|
||||||
|
const [loading, setLoading] = useState<boolean>(false);
|
||||||
|
return (
|
||||||
|
<div
|
||||||
|
className={clases.login}
|
||||||
|
style={{
|
||||||
|
display: isLogin ? "none" : "flex",
|
||||||
|
}}
|
||||||
|
>
|
||||||
|
<div
|
||||||
|
className={clases.bg}
|
||||||
|
style={{
|
||||||
|
background: `url(${loginBox})`,
|
||||||
|
width: "406px",
|
||||||
|
height: "544px",
|
||||||
|
display: "flex",
|
||||||
|
flexDirection: "column",
|
||||||
|
justifyContent: "space-around",
|
||||||
|
alignItems: "center",
|
||||||
|
}}
|
||||||
|
>
|
||||||
|
<img
|
||||||
|
style={{
|
||||||
|
width: "40%",
|
||||||
|
}}
|
||||||
|
src={logo}
|
||||||
|
></img>
|
||||||
|
<Form
|
||||||
|
style={{
|
||||||
|
display: "block",
|
||||||
|
// display: "flex",
|
||||||
|
// flexDirection: "column",
|
||||||
|
// alignItems: "start",
|
||||||
|
// justifyContent: "center",
|
||||||
|
// width: "90%",
|
||||||
|
}}
|
||||||
|
name="basic"
|
||||||
|
labelCol={{ span: 5 }}
|
||||||
|
wrapperCol={{ span: 16 }}
|
||||||
|
initialValues={{ remember: true }}
|
||||||
|
// onFinish={onFinish}
|
||||||
|
// onFinishFailed={onFinishFailed}
|
||||||
|
autoComplete="off"
|
||||||
|
>
|
||||||
|
<Form.Item
|
||||||
|
label="账号"
|
||||||
|
name="username"
|
||||||
|
// rules={[{ required: true, message: "请输入账号" }]}
|
||||||
|
>
|
||||||
|
<Input placeholder="输入账号" />
|
||||||
|
</Form.Item>
|
||||||
|
|
||||||
|
<Form.Item
|
||||||
|
label="密码"
|
||||||
|
name="password"
|
||||||
|
// rules={[{ required: true, message: "Please input your password!" }]}
|
||||||
|
>
|
||||||
|
<Input.Password placeholder="输入密码" />
|
||||||
|
</Form.Item>
|
||||||
|
|
||||||
|
<Form.Item
|
||||||
|
name="remember"
|
||||||
|
valuePropName="checked"
|
||||||
|
wrapperCol={{ offset: 8, span: 16 }}
|
||||||
|
>
|
||||||
|
<Checkbox>Remember me</Checkbox>
|
||||||
|
</Form.Item>
|
||||||
|
|
||||||
|
<Form.Item wrapperCol={{ offset: 8, span: 16 }}>
|
||||||
|
<Button
|
||||||
|
type="primary"
|
||||||
|
htmlType="submit"
|
||||||
|
onClick={() => {
|
||||||
|
setLoading(true);
|
||||||
|
setTimeout(() => {
|
||||||
|
setIsLogin(true);
|
||||||
|
}, 1500);
|
||||||
|
}}
|
||||||
|
loading={loading}
|
||||||
|
>
|
||||||
|
登录
|
||||||
|
</Button>
|
||||||
|
</Form.Item>
|
||||||
|
</Form>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
);
|
||||||
|
};
|
Loading…
Reference in New Issue