Quantcast
Channel: Recent Questions - Stack Overflow
Viewing all articles
Browse latest Browse all 12111

UseContext (tsx) not updating

$
0
0

I'm trying to set a user from the login to have a profile page later, but for some reason, the context is not working.

This is my code:

The App.tsx right now:I've tried using useMemo but that doesn't work neither.

export const UserContext = createContext<UserContexType>({} as UserContexType);export const UserData = () => useContext(UserContext);function App() {  let myUser: User = {    name: "Usuario", points: "0", isAuthenticated: false  }  const [user, setUser] = useState<User>(myUser);  return (<UserContext.Provider value={{AuthUser : user, setAuthUser: setUser}}><BrowserRouter><AppRouter />      </BrowserRouter></UserContext.Provider>  );}export default App;

The Login.tsx:

const Login = (props: ActionProps) => {(...)const { setAuthUser} = UserData();(...)var user:User = {        name: username,         points: "10",         isAuthenticated: true      }setAuthUser(user);(...)}      

The types.tsx:

export type User = {    name: string;    points: string;    isAuthenticated: boolean;  }export type UserContexType = {    AuthUser: User;    setAuthUser: (value: User) => void;}

And the profile:

const ProfilePage = () => {    const { t } = useTranslation();    const {AuthUser} = UserData();    return(<Container sx={{ mt: 9 }} maxWidth="xl"><div ><p>{t('profile_name')}</p><p>{AuthUser.name}</p><p>{t('profile_points')}</p><p>{AuthUser.points}</p></div></Container>    )}

Viewing all articles
Browse latest Browse all 12111

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>