This commit is contained in:
2026-02-12 21:53:15 +08:00
parent dad74e0c9d
commit dc845d46e1
3 changed files with 12 additions and 9 deletions

View File

@@ -24,6 +24,7 @@ const ActivityDetail = () => {
const headerBg = useTransform(scrollY, [0, 60], ['rgba(255,255,255,0)', 'rgba(255,255,255,1)']);
const headerShadow = useTransform(scrollY, [0, 60], ['none', '0 2px 8px rgba(0,0,0,0.1)']);
const headerColor = useTransform(scrollY, [0, 60], ['rgba(255,255,255,1)', 'rgba(0,0,0,0.85)']);
const titleOpacity = useTransform(scrollY, [100, 200], [0, 1]);
const { data: activity, isLoading, error } = useQuery({
queryKey: ['activity', id],
@@ -140,7 +141,7 @@ const ActivityDetail = () => {
<ArrowLeftOutlined />
</motion.div>
<motion.div
style={{ color: headerColor, fontWeight: 600, opacity: useTransform(scrollY, [100, 200], [0, 1]) }}
style={{ color: headerColor, fontWeight: 600, opacity: titleOpacity }}
>
{activity.title}
</motion.div>
@@ -222,6 +223,15 @@ const ActivityDetail = () => {
{signUpMutation.isPending ? '提交中...' : activity.is_signed_up ? '已报名' : '立即报名'}
</motion.button>
</div>
<LoginModal
visible={loginVisible}
onClose={() => setLoginVisible(false)}
onLoginSuccess={(userData) => {
login(userData);
// Auto trigger signup after login if needed, or just let user click again
}}
/>
</motion.div>
);
};