Skip to main content

#37 - Ruby on Rails

· One min read

29/10/2022 - Aula 4 de Ruby (Remoto)

A aula começou um pouco atrasada pois o coordenador não apareceu para liberar o Google Meet para nós, mas o professor Mauricio utilizou uma conta dele para criar uma sala e nós entramos por lá.

Professor começou recapitulando a aula anterior e explicando novos itens do Next.js.

Começamos vendo sobre o useSWR que é um hook que faz o cache de dados e faz o refresh deles quando necessário.

import useSWR from 'swr'

function Profile() {
const { data, error } = useSWR('/api/user', fetch)

if (error) return <div>failed to load</div>
if (!data) return <div>loading...</div>
return <div>hello {data.name}!</div>
}

Depois arrumamos a parte de autenticação na API e utilizamos o NextAuth para fazer a autenticação.

import { signIn, signOut, useSession } from 'next-auth/client'

export default function Page() {
const [ session, loading ] = useSession()

return <>
{!session && <>
Not signed in <br/>
<button onClick={signIn}>Sign in</button>
</>}
{session && <>
Signed in as {session.user.email} <br/>
<button onClick={signOut}>Sign out</button>
</>}
</>
}

Depois disso, professor falou do trabalho, e ficou para ajudar quem tiver dúvidas.