import { Alert, Pressable, StyleSheet, Text, View } from 'react-native'; import { colors } from '../../../src/theme'; import { useAuth } from '../../../src/context/AuthContext'; import { useOnboarding } from '../../../src/hooks'; import { ScreenShell } from '../ui/ScreenShell'; import { Illustration } from '../ui/Illustration'; export function P3Identity() { const { setData, navigate, back, reset } = useOnboarding(); const { logout } = useAuth(); const chooseCandidate = () => { setData({ identity: 'candidate' }); navigate('P4'); }; const chooseRecruiter = () => { setData({ identity: 'recruiter' }); navigate('B3'); }; /** * 退出登录必须同时清掉令牌与角色。 * 此前只调 `reset()`(仅清流程 state 与引导资料),登录态原封不动 —— * 界面回到了登录页,但重进 App 又会被判定为「已登录」而直接放进主界面。 */ const handleLogout = () => { Alert.alert('确认退出登录', '退出后需要重新登录', [ { text: '取消', style: 'cancel' }, { text: '退出', style: 'destructive', onPress: () => { logout(); reset(); }, }, ]); }; return ( 选择你的身份 我要找工作 或者 我要招人 退出登录 ); } const styles = StyleSheet.create({ heading: { fontSize: 22, fontWeight: '800', color: colors.textPrimary, textAlign: 'center', marginVertical: 16 }, card: { backgroundColor: colors.white, borderRadius: 18, padding: 18, alignItems: 'center', borderWidth: 1, borderColor: colors.border }, cardTop: { marginBottom: 16 }, cardBtn: { width: '100%', height: 48, borderRadius: 24, backgroundColor: colors.primary, alignItems: 'center', justifyContent: 'center', }, cardBtnOutline: { backgroundColor: colors.white, borderWidth: 1, borderColor: colors.primary }, cardBtnText: { fontSize: 16, fontWeight: '700', color: colors.textInverse }, or: { textAlign: 'center', color: colors.textHint, marginVertical: 14, fontSize: 13 }, logout: { marginTop: 22, alignItems: 'center' }, logoutText: { fontSize: 13, color: colors.textHint }, });