fix: 交互优化

This commit is contained in:
streakingman 2022-10-04 16:48:23 +08:00
parent c9cc9114c3
commit 89eab211e4
3 changed files with 46 additions and 15 deletions

View File

@ -256,8 +256,11 @@ export const ConfigDialog: FC<{
}); });
}; };
const [uploading, setUploading] = useState<boolean>(false);
// 生成二维码和链接 // 生成二维码和链接
const onGenQrLinkClick = () => { const onGenQrLinkClick = () => {
if (uploading) return;
setUploading(true);
setConfigError(''); setConfigError('');
generateTheme() generateTheme()
.then((theme) => { .then((theme) => {
@ -273,6 +276,7 @@ export const ConfigDialog: FC<{
setConfigError( setConfigError(
'五分钟内只能上传一次(用的人有点多十分抱歉😭),先保存预览看看效果把~' '五分钟内只能上传一次(用的人有点多十分抱歉😭),先保存预览看看效果把~'
); );
setUploading(false);
return; return;
} }
@ -294,11 +298,15 @@ export const ConfigDialog: FC<{
.catch(({ error }) => { .catch(({ error }) => {
setConfigError(error); setConfigError(error);
setGenLink(''); setGenLink('');
})
.finally(() => {
setUploading(false);
}); });
}) })
.catch((e) => { .catch((e) => {
setConfigError(e); setConfigError(e);
setGenLink(''); setGenLink('');
setUploading(false);
}); });
}; };
@ -499,7 +507,7 @@ export const ConfigDialog: FC<{
</button> </button>
<button className="flex-grow" onClick={onGenQrLinkClick}> <button className="flex-grow" onClick={onGenQrLinkClick}>
& &{uploading && '...'}
</button> </button>
<button className="flex-grow" onClick={closeMethod}> <button className="flex-grow" onClick={closeMethod}>

View File

@ -1,3 +1,17 @@
@keyframes gradient {
0% {
background-position: 0 50%;
}
50% {
background-position: 100% 50%;
}
100% {
background-position: 0 50%;
}
}
.container { .container {
position: fixed; position: fixed;
right: 8px; right: 8px;
@ -21,7 +35,7 @@
position: absolute; position: absolute;
right: 0; right: 0;
top: 0; top: 0;
transition: 0.3s; transition: 0.4s;
overflow: hidden; overflow: hidden;
img { img {
@ -31,18 +45,26 @@
} }
} }
.diy{
width: 52px;
font-weight: 900;
font-size: 18px;
background-image: linear-gradient(
45deg,
#ee7752,
#e73c7e,
#23a6d5,
#23d5ab
);
background-size: 400% 400%;
background-position: 0 0;
animation: gradient 6s ease infinite;
}
&.open { &.open {
.diy { .diy {
width: 80px; width: 86px;
font-weight: 900; animation: gradient 2s ease infinite;
font-size: 18px;
background-image: linear-gradient(
-45deg,
#ee7752,
#e73c7e,
#23a6d5,
#23d5ab
);
} }
} }
} }

View File

@ -59,11 +59,12 @@ export const ThemeChanger: FC<{
onDiyClick(); onDiyClick();
}} }}
style={{ style={{
opacity: open ? 1 : 0.3, transform: open
transform: open ? `translateY(-${110 * 6}%)` : '', ? `translateY(-${110 * 6}%)`
: 'translateY(-110%)',
}} }}
> >
DIY! {open ? '点我整活' : 'DIY!'}
</div> </div>
<div <div
onClick={() => setOpen(!open)} onClick={() => setOpen(!open)}