• Из-за чего перезагружается страница входа пользователя?

    @SNina Автор вопроса
    Отчаянно пытаюсь научиться писать хорошие сайты
    Я нашла ошибку. У меня перед функцией LoginPage стояло async. Это и было причиной перезагрузок
    Ответ написан
    Комментировать
  • Как при выходе из личного кабинета обнулить пользователя в функции useSWR?

    @SNina Автор вопроса
    Отчаянно пытаюсь научиться писать хорошие сайты
    Наконец-то нашла работающий вариант. В функции SWR:
    const fetcher = (url) => fetch( url, { credentials: "include" } ).then( res => res.json() );
    
    export const useUser = () => {
      const { data, error, isLoading, mutate } = useSWR( `${ baseApi }getuser`, fetcher );
    
      return {  
        user: data,
        isLoading,
        error,
        mutate
      };
    
    };


    В функции Logout:
    const logout = async() => {
       let response = NextResponse.next();
       const { mutate } = useUser();
    
    axios.post( `${ baseApi }logout` )
        .then( res => {
          response.cookies.delete( "XSRF-TOKEN" );
        } );
    
     mutate( null, { revalidate: false } );
     router.push( "/" );
      };

    То есть, mutate нужно брать из функции useUser() и прописывать именно так mutate( null, { revalidate: false } );
    Это у меня сработало
    Ответ написан
    Комментировать