feat: login whatever

This commit is contained in:
chashaobao
2025-06-15 01:09:30 +08:00
parent 5acc25c8c9
commit 80c0d71921
6 changed files with 26 additions and 10 deletions

View File

@ -5,7 +5,7 @@ import { useCallback, useState } from 'react';
import LoginDialog from '@/components/login-dialog';
import useUserInfo from '@/hooks/use-user-info';
import { isNeedLogin } from '@/utils/user';
import { getAgreementSigned, isNeedLogin } from '@/utils/user';
import './index.less';
@ -26,6 +26,7 @@ function LoginButton(props: ILoginButtonProps) {
const userInfo = useUserInfo();
const [visible, setVisible] = useState(false);
const needLogin = isNeedLogin(userInfo);
const needSign = !getAgreementSigned();
const onSuccess = useCallback(
e => {
@ -40,11 +41,13 @@ function LoginButton(props: ILoginButtonProps) {
<Button
{...otherProps}
className={classNames(PREFIX, className)}
onClick={needLogin ? () => setVisible(true) : onClick}
onClick={needLogin || needSign ? () => setVisible(true) : onClick}
>
{children}
</Button>
{visible && <LoginDialog onCancel={() => setVisible(false)} onSuccess={onSuccess} needPhone={needPhone} />}
{visible && (
<LoginDialog disableCheck onCancel={() => setVisible(false)} onSuccess={onSuccess} needPhone={needPhone} />
)}
</>
);
}