学习笔记jira项目23useauth切换登录和非登录信息
  TEZNKK3IfmPf 2023年11月14日 22 0
import React, { useState } from "react";
import { RegisterScreen } from "unauthenticated-app/register";
import { LoginScreen } from "unauthenticated-app/login";
import { Button, Card, Divider } from "antd";
import styled from "@emotion/styled";
import logo from "assets/logo.svg";
import left from "assets/left.svg";
import right from "assets/right.svg";
import { useDocumentTitle } from "utils";
import { ErrorBox } from "components/lib";

export default function UnauthenticatedApp() {
const [isRegister, setIsRegister] = useState(false);
const [error, setError] = useState<Error | null>(null);

useDocumentTitle("请登录注册以继续");

return (
<Container>
<Header />
<Background />
<ShadowCard>
<Title>{isRegister ? "请注册" : "请登录"}</Title>
<ErrorBox error={error} />
{isRegister ? (
<RegisterScreen onError={setError} />
) : (
<LoginScreen onError={setError} />
)}
<Divider />
<Button type={"link"} onClick={() => setIsRegister(!isRegister)}>
{isRegister ? "已经有账号了?直接登录" : "没有账号?注册新账号"}
</Button>
</ShadowCard>
</Container>
);
}

export const LongButton = styled(Button)`
width: 100%;
`;

const Title = styled.h2`
margin-bottom: 2.4rem;
color: rgb(94, 108, 132);
`;

const Background = styled.div`
position: absolute;
width: 100%;
height: 100%;
background-repeat: no-repeat;
background-attachment: fixed;
background-position: left bottom, right bottom;
background-size: calc(((100vw - 40rem) / 2) - 3.2rem),
calc(((100vw - 40rem) / 2) - 3.2rem), cover;
background-image: url(), url();
`;

const Header = styled.header`
background: url() no-repeat center;
padding: 5rem 0;
background-size: 8rem;
width: 100%;
`;

const ShadowCard = styled(Card)`
width: 40rem;
min-height: 56rem;
padding: 3.2rem 4rem;
border-radius: 0.3rem;
box-sizing: border-box;
box-shadow: rgba(0, 0, 0, 0.1) 0 0 10px;
text-align: center;
`;

const Container = styled.div`
display: flex;
flex-direction: column;
align-items: center;
min-height: 100vh;
`;
【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 2023年11月14日 0

暂无评论

推荐阅读
  TEZNKK3IfmPf   2023年11月14日   23   0   0 jira
  TEZNKK3IfmPf   2023年11月14日   42   0   0 jira
  TEZNKK3IfmPf   2023年11月14日   30   0   0 jira
  TEZNKK3IfmPf   2023年11月13日   31   0   0 bugjira
TEZNKK3IfmPf